GNOME Bugzilla – Bug 635901
Project manager crashes when loading automake projects
Last modified: 2010-11-28 08:24:51 UTC
With the new project manager, Anjuta crashes as it tries to load a project with this backtrace:
+ Trace 224863
I don't get this here. I have looked at the code and I see nothing wrong. The list returned by anjuta_pm_project_get_node_info is a static list which is built when needed from a static array so I see no reason to have an empty item inside. Then, perhaps there is an error somewhere else which overwrite the memory. Which exact version of Anjuta do you use ? I suppose after merging the git shell branch so I should have the same. On which project does it happens ? Anjuta or another one. Are you able to load other projects ? Does it happens every times ? Or do you need to do something special ? I have already get some strange bugs after big changes in Anjuta, I think because all dependencies are not taken into account. So perhaps you could have to clean the while project and rebuild everything.
I uninstalled, then cleaned and rebuilt my tree again from scratch. I still get the same error. It seems I can't even start Anjuta at all with this bug, because it crashes even if a project isn't loaded. I verified this by flushing out my ~/.anjuta directory, which always used to leave me with a clean slate with nothing loaded. I still get this exact crash. Right now, I'm using git head as of about 5 minutes ago, if that matters.
It seems that it crashes somewhere in the GBF backend. Just before the crash I get this debug output (anjuta:31415): am-project-DEBUG: plugin.c:38 (activate_plugin) AmpPlugin: Activating Anjuta am backend Plugin ... (anjuta:31415): libanjuta-DEBUG: anjuta-status.c:327 (anjuta_status_busy_pop) Busy status: 1 (anjuta:31415): am-project-DEBUG: plugin.c:68 (iproject_backend_probe) probe amp project (anjuta:31415): libanjuta-DEBUG: anjuta-status.c:298 (anjuta_status_busy_push) Busy status: 2 (anjuta:31415): libanjuta-DEBUG: anjuta-status.c:327 (anjuta_status_busy_pop) Busy status: 1 (anjuta:31415): libanjuta-DEBUG: anjuta-status.c:298 (anjuta_status_busy_push) Busy status: 2 (anjuta:31415): dir-project-DEBUG: plugin.c:38 (activate_plugin) DirProjectPlugin: Activating Anjuta directory backend Plugin ... (anjuta:31415): libanjuta-DEBUG: anjuta-status.c:327 (anjuta_status_busy_pop) Busy status: 1 (anjuta:31415): dir-project-DEBUG: plugin.c:68 (iproject_backend_probe) probe directory project (anjuta:31415): libanjuta-project-manager-DEBUG: project.c:206 (anjuta_pm_project_load) Creating new gbf project I can at least load anjuta if I rename the file of the project I last had open, so that it doesn't find it and try to load it. But if I try to load any automake based project I have, it crashes.
Ok so I figured this one out. I guess there was some old left over GBF cruft in my install prefix and Anjuta was loading that along with the new stuff and I guess they don't mix so well. Cleaning out the prefix fixed it and now I can load Anjuta again.
(In reply to comment #4) > Ok so I figured this one out. I guess there was some old left over GBF cruft in > my install prefix and Anjuta was loading that along with the new stuff and I > guess they don't mix so well. Cleaning out the prefix fixed it and now I can > load Anjuta again. Ok, it's a good news. But I don't understand how you can get this problem. GBF stuff is just one plugin (shared library + .plugin file). If you have the old plugin file in /usr/local/lib/anjuta, the project manager will try to load it but it should fails because some symbol are missing so it shouldn't do any harm (I get this here). If you reproduce the problem later, I'm still interested to have more details. But I think it doesn't matter as much now.