zhangzhuqian / gource

Automatically exported from code.google.com/p/gource
0 stars 0 forks source link

Gource crashes with --user-image-dir .git/avatar/ #192

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?

1. Compile gource: $ CC=gcc-mp-4.8 CXX=g++-mp-4.8 ./configure
2. Build and install: $ make & make install
3. Change to git repo and run it: gource --user-image-dir .git/avatar/

What is the expected output? What do you see instead?

* The application running and display the user pictures.

* gource(70665,0x7fff71503960) malloc: *** error for object 0x10de6e820: 
pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
[2]    70665 abort      gource --user-image-dir .git/avatar/

What version of the product are you using? On what operating system?

OS: OSX 10.7.5

GCC: gcc-mp-4.8 (from MacPorts)

CXX: g++-mp-4.8 (from MacPorts)

Gource Versions: 
* 4.0 
(https://code.google.com/p/gource/downloads/detail?name=gource-0.40.tar.gz&can=2
&q=)
* 4.1 (https://github.com/acaudwell/Gource.git)

Please provide any additional information below.

I tried it first with the version from MacPorts which works with the 
--user-image-dir option very well. Unfortunately this was version 0.39 without 
the caption support. 

Original issue reported on code.google.com by blued...@mailbox.org on 23 May 2013 at 9:04

GoogleCodeExporter commented 8 years ago
Hi,

Sorry to hear it's not working.

Could you run try running it under gdb or valgrind to see where about in the 
code it is failing? eg:

gdb ./gource
run --user-image-dir /path/to/your/repo/.git/avatar/

Also do any of the image filenames have non-ascii characters? (Might be 
relevant).

Cheers

Andrew

Original comment by acaudw...@gmail.com on 23 May 2013 at 11:59

GoogleCodeExporter commented 8 years ago
Hi,

in the avatar folder were filenames with umlauts. I tried it with another 
folder with just one plain filename but the same error occurs.

Here is the output of the gdb:
run --user-image-dir /path/to/your/repo/.git/avatar /path/to/your/repo/
Starting program: /path/to/gource-0.40/gource --user-image-dir 
/path/to/your/repo/.git/avatar /path/to/your/repo/
Reading symbols for shared libraries . done
gource(72496,0x7fff71503960) malloc: *** error for object 0x100411820: pointer 
being freed was not allocated
*** set a breakpoint in malloc_error_break to debug

Program received signal SIGABRT, Aborted.
0x00007fff84bb0ce2 in __pthread_kill ()

I am not sure if this will help you. 

Stefano

Original comment by blued...@mailbox.org on 23 May 2013 at 2:07

GoogleCodeExporter commented 8 years ago
Just a guess, but it might be that you have some C++-based libs (eg boost 
system/filesystem) that were built with a different version of GCC (eg if they 
were built for the Xcode 4.2 GCC), as C++ libs tend to break between compiler 
versions:

http://stackoverflow.com/questions/4697859/mac-os-x-and-static-boost-libs-stdstr
ing-fail

Since the user image loading code now uses boost filesystem it might be this.

Original comment by acaudw...@gmail.com on 24 May 2013 at 2:44

GoogleCodeExporter commented 8 years ago

Original comment by acaudw...@gmail.com on 26 Jun 2013 at 10:54