Segfault with lastest master

Dirk Hohndel dirk at hohndel.org
Fri Jul 10 22:05:23 PDT 2015


On Sat, Jul 11, 2015 at 02:59:17PM +1000, Rick Walsh wrote:
> On 11 July 2015 at 12:48, Dirk Hohndel <dirk at hohndel.org> wrote:
> 
> >
> >
> > Nope. MarbleDirs.cpp
> >
> > And actually why don't you use this patch...
> >
> > diff --git a/src/lib/marble/MarbleDirs.cpp b/src/lib/marble/MarbleDirs.cpp
> > index 014ab0582d0b..734107f6536e 100644
> > --- a/src/lib/marble/MarbleDirs.cpp
> > +++ b/src/lib/marble/MarbleDirs.cpp
> > @@ -68,6 +68,7 @@ QString MarbleDirs::path( const QString& relativePath )
> >      }
> >      QString result = QDir( fullpath ).canonicalPath();
> >      if (result.isEmpty()) {
> > +           qDebug() << fullpath << "result" << result;
> >             if (relativePath.contains("bitmaps") && relativePath !=
> > "bitmaps/empty.png")
> >                     return path("bitmaps/empty.png");
> >  #if defined(DEBUG)
> >
> 
> I've just tried that but I'm not sure it's doing much.
> 
>  (gdb) run
> Starting program: /home/rick/build/subsurface/build/subsurface
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib64/libthread_db.so.1".
> Map theme file does not exist: ""
> QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No
> such file or directory
> [New Thread 0x7fff81bf9700 (LWP 20213)]
> [Thread 0x7fff81bf9700 (LWP 20213) exited]
> 

Umm. Err. What? If the startup used to get you into the infinite recursion
(that's what happens in the "return path("bimaps/empty.png");"...)

Oh, never mind. I bet your libssrfmarble isn't compiled with debugging
enabled, so the qDebug never gets printed for you.

Can you replace the qDebug with

fprintf(stderr, "fullpath %s results in %s\n", qPrintable(fullpath), qPrintable(result));

(completely untested, typos and thinkos included free of charge... but
something along those lines should work...)

/D


More information about the subsurface mailing list