Segfault with lastest master
Rick Walsh
rickmwalsh at gmail.com
Fri Jul 10 23:44:39 PDT 2015
Hi Dirk,
On 11 July 2015 at 15:05, Dirk Hohndel <dirk at hohndel.org> wrote:
> 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...)
>
Now I need a beer and/or coffee.
So after I actually built Subsurface against the Marble libs modified with
the fprintf(stderr... line., this does do something.
(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".
fullpath /bitmaps/empty.png results in
tried to open nonexistent file bitmaps/empty.png
fullpath /maps/earth/srtm2/srtm2.dgml results in
tried to open nonexistent file maps/earth/srtm2/srtm2.dgml
Map theme file does not exist: ""
fullpath
/home/rick/build/subsurface/build/marbledata/placemarks/cityplacemarks.kml
results in
tried to open nonexistent file placemarks/cityplacemarks.kml
fullpath
/home/rick/build/subsurface/build/marbledata/placemarks/cityplacemarks.cache
results in
tried to open nonexistent file placemarks/cityplacemarks.cache
etc.
It is looking for the files in the wrong place. marbledata is a symbolic
link to:
/home/rick/build/subsurface/marbledata, when it needs to point to
/home/rick/build/marble-source/data.
I recreated the link to point where it should, and the error messages go
away.
Rick
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.subsurface-divelog.org/pipermail/subsurface/attachments/20150711/ea420b58/attachment.html>
More information about the subsurface
mailing list