Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mapserver crash when the text label from styleitem has some bracket in it #4965

Closed
wants to merge 2 commits into from
Closed

Mapserver crash when the text label from styleitem has some bracket in it #4965

wants to merge 2 commits into from

Conversation

tbonfort
Copy link
Member

@tbonfort tbonfort commented Aug 4, 2014

Hi,

using the STYLEITEM to have label and in the field there is this value:

LABEL(f:"Arial",t:"(N.3)",a:0,s:9g,c:#FF00FF)
I do some test and see that the point "." is not a problem .
Instead the problem seem to be the brackets.

I try to escape them using this sintax

LABEL(f:"Arial",t:"\(N.3\)",a:0,s:9g,c:#FF00FF)

but , if it has succes to avoi the crash of mapserver , unfortunatley in the text rendered
appear the "" char.
:(

So I guess this is an issue.

@aperi2007
Copy link
Author

aperi2007 commented Jul 29, 2014

Hi,
I prepare a simple shapefile to show this issue.

http://tinyurl.com/kckax66

The shp has 2 points.
One of two has a style definited in the filed.
The text is ....t:"(N.3)".....
The two brackets will crash the qgis.

If I change it using:
t:"(N.3)"
it don't crash, but the text appeared is with \ chars.

regards.

@aperi2007
Copy link
Author

aperi2007 commented Jul 29, 2014

I search for the bug in mapserver code, but no one point found.
Now I start to see in the gdal code.
Seem the bug could be in the gdal "ogrfeaturestyle.cpp".

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

I try t understand if the bug was on gdal, but I'm not able to find the right point.

So I decided to develope a patch for mapserver to resolve the problem of the escape of bracket.
Infact, actually the solution to avoid the crash on brackets is to escape the backet with this string:

LABEL(f:"Arial",t:"\(N.3\)",a:0,s:9g,c:#FF00FF)

But mapserver show the / in the map.
:(

I try to develope a patch to remove the "" after retrieved the text from the datasource.

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

H,
tracking the flow on mapserver I reach the function
char *msStrdup( const char * pszString )
in the "mapsctring.c" file.

I notice also that there is this code inside it:

  if( pszString == NULL )
    pszString = "";

I test it with some debug logs to see accurately the flow, and notice that when
pszString is null the inside code
pszString = "";

go in error !

THis is quite clear because the pszString is declared "const char *"
To avoid this I declare a new local variable and use it to pass to pszReturn.

char * pszTempString

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

I try this code:

char *msStrdup( const char * pszString )
{
  char        *pszReturn;
  if( pszString == NULL ) {
    pszReturn = strdup("");
  } else {
    pszReturn = strdup( pszString );
  }
  if( pszReturn == NULL ) {
    fprintf(stderr, "msSmallMsStrdup(): Out of memory allocating %ld bytes.\n",
            (long) strlen(pszString) );
    exit(1);
  }
  return( pszReturn );
}

It don't resolve definitively my problem that mapserver crash on brackets.
But it resolve the crash on strdup. Infaxt the flow go on and do not stop never in the msStrdup.

So I guess this is surealy a patch to apply because it mean a more robust code.

@tbonfort
what do guess about this patch to msStrdup ?

A can apply a pull for it ?

thx

@tbonfort
Copy link
Member

tbonfort commented Jul 31, 2014

looking at the code that is present, I cannot see why this fix is needed, as we are already returning a strdup'd version of the "" string. Are you sure the code is segfaulting there? Did you try this in a debugger ?

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

The error seem here:

 if( pszString == NULL )
    pszString = "";

if the pszString is NULL this association don't like in execution.
Need the string-terminator and this ask 1 byte space.

To resolve this I

substitute it with
pszString = strddup("");
This allocate the 1 byte to host the string-terminator byte.

The else is only to avoid to do also a strdup of a NULL string when the pszString is NULL.
This is of course unuseful, but for clearly of code.

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

I start to debug using the shp2img tools.

The first try give this result:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a96afc in msLayoutTextSymbol (map=0x618ed0, ts=0x7fffffffdc00,
tgret=0x6617c0)
at /home/archivio/tomcat/software/mapserver/mapserver-svn/textlayout.c:728
728 penx += g->glyph->metrics.advance;
(gdb)

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

First of all.
@tbonfort
I verify that the msStrdup was ok as is.
No trouble from the

pszString = "";

I was quite surely that need a byte allocation, but the debugger seem to say that is ok as is.
So no need for a patch on it.
:)

Sorry for noise .

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

After restore the original msStrdup, I retry the debug
it return this error:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a96afc in msLayoutTextSymbol (map=0x618ed0, ts=0x7fffffffdc00,
tgret=0x6617c0)
at /home/archivio/tomcat/software/mapserver/mapserver-svn/textlayout.c:728
728 penx += g->glyph->metrics.advance;
(gdb)

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

I notice just now that in the

LABEL(f:"Arial",t:"(N.3)",a:0,s:9g,c:#FF00FF)

I have not the Arial font installed.
So install them from msttfonts and set the path in fontlists for mapserver.

After this I retry the debug.

And have this new error report.

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
*** glibc detected *** /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/shp2img: double free or corruption (out): 0x00007fffffffddc0 ***
======= Backtrace: =========
/lib/x86_64-linux-gnu/libc.so.6(+0x76d76)[0x7ffff3a82d76]
/lib/x86_64-linux-gnu/libc.so.6(cfree+0x6c)[0x7ffff3a87b1c]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(freeTextSymbol+0x150)[0x7ffff79860d9]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(msDrawLabel+0x947)[0x7ffff79cbf1c]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(pointLayerDrawShape+0x4e8)[0x7ffff79c9249]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(msDrawShape+0x2aa)[0x7ffff79ca477]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(msDrawVectorLayer+0xb7d)[0x7ffff79c6860]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(msDrawLayer+0x7a3)[0x7ffff79c57b6]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.1(msDrawMap+0x7ad)[0x7ffff79c43b5]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/shp2img(main+0xff2)[0x40249e]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd)[0x7ffff3a2aead]
/home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/shp2img[0x4013c9]
======= Memory map: ========
00400000-00403000 r-xp 00000000 fe:00 291385                             /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/shp2img
00603000-00604000 rw-p 00003000 fe:00 291385                             /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/shp2img
00604000-006ac000 rw-p 00000000 00:00 0                                  [heap]
7fffe4000000-7fffe4021000 rw-p 00000000 00:00 0
7fffe4021000-7fffe8000000 ---p 00000000 00:00 0
7fffeb95d000-7fffeb9a1000 r--p 00000000 fe:04 266812                     /usr/share/fonts/truetype/msttcorefonts/Arial.ttf
7fffeb9a1000-7fffeb9a4000 r-xp 00000000 fe:00 210065                     /lib/x86_64-linux-gnu/libgpg-error.so.0.8.0
7fffeb9a4000-7fffebba3000 ---p 00003000 fe:00 210065                     /lib/x86_64-linux-gnu/libgpg-error.so.0.8.0
7fffebba3000-7fffebba4000 rw-p 00002000 fe:00 210065                     /lib/x86_64-linux-gnu/libgpg-error.so.0.8.0
7fffebba4000-7fffebbb5000 r-xp 00000000 fe:04 164141                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.0.0
7fffebbb5000-7fffebdb4000 ---p 00011000 fe:04 164141                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.0.0
7fffebdb4000-7fffebdb5000 r--p 00010000 fe:04 164141                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.0.0
7fffebdb5000-7fffebdb6000 rw-p 00011000 fe:04 164141                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.0.0
7fffebdb6000-7fffebdc6000 r-xp 00000000 fe:04 164147                     /usr/lib/x86_64-linux-gnu/libtasn1.so.3.1.16
7fffebdc6000-7fffebfc5000 ---p 00010000 fe:04 164147                     /usr/lib/x86_64-linux-gnu/libtasn1.so.3.1.16
7fffebfc5000-7fffebfc6000 r--p 0000f000 fe:04 164147                     /usr/lib/x86_64-linux-gnu/libtasn1.so.3.1.16
7fffebfc6000-7fffebfc7000 rw-p 00010000 fe:04 164147                     /usr/lib/x86_64-linux-gnu/libtasn1.so.3.1.16
7fffebfc7000-7fffebfca000 r-xp 00000000 fe:00 210063                     /lib/x86_64-linux-gnu/libkeyutils.so.1.4
7fffebfca000-7fffec1c9000 ---p 00003000 fe:00 210063                     /lib/x86_64-linux-gnu/libkeyutils.so.1.4
7fffec1c9000-7fffec1ca000 r--p 00002000 fe:00 210063                     /lib/x86_64-linux-gnu/libkeyutils.so.1.4
7fffec1ca000-7fffec1cb000 rw-p 00003000 fe:00 210063                     /lib/x86_64-linux-gnu/libkeyutils.so.1.4
7fffec1cb000-7fffec1d3000 r-xp 00000000 fe:04 164139                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7fffec1d3000-7fffec3d2000 ---p 00008000 fe:04 164139                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7fffec3d2000-7fffec3d3000 r--p 00007000 fe:04 164139                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7fffec3d3000-7fffec3d4000 rw-p 00008000 fe:04 164139                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7fffec3d4000-7fffec3d7000 r-xp 00000000 fe:00 210061                     /lib/x86_64-linux-gnu/libcom_err.so.2.1
7fffec3d7000-7fffec5d6000 ---p 00003000 fe:00 210061                     /lib/x86_64-linux-gnu/libcom_err.so.2.1
7fffec5d6000-7fffec5d7000 r--p 00002000 fe:00 210061                     /lib/x86_64-linux-gnu/libcom_err.so.2.1
7fffec5d7000-7fffec5d8000 rw-p 00003000 fe:00 210061                     /lib/x86_64-linux-gnu/libcom_err.so.2.1
7fffec5d8000-7fffec5fe000 r-xp 00000000 fe:04 164135                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7fffec5fe000-7fffec7fe000 ---p 00026000 fe:04 164135                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7fffec7fe000-7fffec7ff000 r--p 00026000 fe:04 164135                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7fffec7ff000-7fffec800000 rw-p 00027000 fe:04 164135                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7fffec800000-7fffec801000 rw-p 00000000 00:00 0
7fffec801000-7fffec8ca000 r-xp 00000000 fe:04 164137                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7fffec8ca000-7fffecac9000 ---p 000c9000 fe:04 164137                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7fffecac9000-7fffecad3000 r--p 000c8000 fe:04 164137                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7fffecad3000-7fffecad5000 rw-p 000d2000 fe:04 164137                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7fffecad5000-7fffecaff000 r-xp 00000000 fe:04 162422                     /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.3000.0
7fffecaff000-7fffeccfe000 ---p 0002a000 fe:04 162422                     /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.3000.0
7fffeccfe000-7fffeccff000 r--p 00029000 fe:04 162422                     /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.3000.0
7fffeccff000-7fffecd00000 rw-p 0002a000 fe:04 162422                     /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0.3000.0
7fffecd00000-7fffecd1e000 r-xp 00000000 fe:00 210031                     /lib/x86_64-linux-gnu/libselinux.so.1
7fffecd1e000-7fffecf1d000 ---p 0001e000 fe:00 210031                     /lib/x86_64-linux-gnu/libselinux.so.1
7fffecf1d000-7fffecf1e000 r--p 0001d000 fe:00 210031                     /lib/x86_64-linux-gnu/libselinux.so.1
7fffecf1e000-7fffecf1f000 rw-p 0001e000 fe:00 210031                     /lib/x86_64-linux-gnu/libselinux.so.1
7fffecf1f000-7fffecf20000 rw-p 00000000 00:00 0
7fffecf20000-7fffecf23000 r-xp 00000000 fe:04 164482                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.3200.4
7fffecf23000-7fffed122000 ---p 00003000 fe:04 164482                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.3200.4
7fffed122000-7fffed123000 r--p 00002000 fe:04 164482                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.3200.4
7fffed123000-7fffed124000 rw-p 00003000 fe:04 164482                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.3200.4
7fffed124000-7fffed199000 r-xp 00000000 fe:04 129073                     /usr/local/lib/liblwgeom-2.1.1.so
7fffed199000-7fffed399000 ---p 00075000 fe:04 129073                     /usr/local/lib/liblwgeom-2.1.1.so
7fffed399000-7fffed39c000 rw-p 00075000 fe:04 129073                     /usr/local/lib/liblwgeom-2.1.1.so
7fffed39c000-7fffed3a8000 r-xp 00000000 fe:04 97700                      /usr/local/lib/libjson-c.so.2.0.1
7fffed3a8000-7fffed5a8000 ---p 0000c000 fe:04 97700                      /usr/local/lib/libjson-c.so.2.0.1
7fffed5a8000-7fffed5a9000 rw-p 0000c000 fe:04 97700                      /usr/local/lib/libjson-c.so.2.0.1
7fffed5a9000-7fffed623000 r-xp 00000000 fe:00 210109                     /lib/x86_64-linux-gnu/libgcrypt.so.11.7.0
7fffed623000-7fffed823000 ---p 0007a000 fe:00 210109                     /lib/x86_64-linux-gnu/libgcrypt.so.11.7.0
7fffed823000-7fffed824000 r--p 0007a000 fe:00 210109                     /lib/x86_64-linux-gnu/libgcrypt.so.11.7.0
7fffed824000-7fffed827000 rw-p 0007b000 fe:00 210109                     /lib/x86_64-linux-gnu/libgcrypt.so.11.7.0
7fffed827000-7fffed8e0000 r-xp 00000000 fe:04 162898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.26.22.4
7fffed8e0000-7fffedadf000 ---p 000b9000 fe:04 162898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.26.22.4
7fffedadf000-7fffedae5000 r--p 000b8000 fe:04 162898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.26.22.4
7fffedae5000-7fffedae7000 rw-p 000be000 fe:04 162898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.26.22.4
7fffedae7000-7fffedb01000 r-xp 00000000 fe:04 164149                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7fffedb01000-7fffedd00000 ---p 0001a000 fe:04 164149                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7fffedd00000-7fffedd01000 r--p 00019000 fe:04 164149                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7fffedd01000-7fffedd02000 rw-p 0001a000 fe:04 164149                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7fffedd02000-7fffedd15000 r-xp 00000000 fe:00 3040221                    /lib/x86_64-linux-gnu/libresolv-2.13.so
7fffedd15000-7fffedf14000 ---p 00013000 fe:00 3040221                    /lib/x86_64-linux-gnu/libresolv-2.13.so
7fffedf14000-7fffedf15000 r--p 00012000 fe:00 3040221                    /lib/x86_64-linux-gnu/libresolv-2.13.so
7fffedf15000-7fffedf16000 rw-p 00013000 fe:00 3040221                    /lib/x86_64-linux-gnu/libresolv-2.13.so
7fffedf16000-7fffedf18000 rw-p 00000000 00:00 0
7fffedf18000-7fffedf1d000 r-xp 00000000 fe:04 164205                     /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fffedf1d000-7fffee11c000 ---p 00005000 fe:04 164205                     /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fffee11c000-7fffee11d000 rw-p 00004000 fe:04 164205                     /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7fffee11d000-7fffee11f000 r-xp 00000000 fe:04 164203                     /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fffee11f000-7fffee31f000 ---p 00002000 fe:04 164203                     /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fffee31f000-7fffee320000 rw-p 00002000 fe:04 164203                     /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7fffee320000-7fffee342000 r-xp 00000000 fe:00 210023                     /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7fffee342000-7fffee541000 ---p 00022000 fe:00 210023                     /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7fffee541000-7fffee542000 r--p 00021000 fe:00 210023                     /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7fffee542000-7fffee543000 rw-p 00022000 fe:00 210023                     /lib/x86_64-linux-gnu/liblzma.so.5.0.0
7fffee543000-7fffee55c000 r-xp 00000000 fe:04 164490                     /usr/lib/x86_64-linux-gnu/librtmp.so.0
7fffee55c000-7fffee75c000 ---p 00019000 fe:04 164490                     /usr/lib/x86_64-linux-gnu/librtmp.so.0
7fffee75c000-7fffee75d000 rw-p 00019000 fe:04 164490                     /usr/lib/x86_64-linux-gnu/librtmp.so.0
7fffee75d000-7fffee799000 r-xp 00000000 fe:04 164133                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7fffee799000-7fffee999000 ---p 0003c000 fe:04 164133                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7fffee999000-7fffee99a000 r--p 0003c000 fe:04 164133                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7fffee99a000-7fffee99c000 rw-p 0003d000 fe:04 164133                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7fffee99c000-7fffee9aa000 r-xp 00000000 fe:04 164151                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.8.3
7fffee9aa000-7fffeeba9000 ---p 0000e000 fe:04 164151                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.8.3
7fffeeba9000-7fffeebaa000 r--p 0000d000 fe:04 164151                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.8.3
7fffeebaa000-7fffeebab000 rw-p 0000e000 fe:04 164151                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.8.3
7fffeebab000-7fffeebd2000 r-xp 00000000 fe:04 164491                     /usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
7fffeebd2000-7fffeedd2000 ---p 00027000 fe:04 164491                     /usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
7fffeedd2000-7fffeedd3000 r--p 00027000 fe:04 164491                     /usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
7fffeedd3000-7fffeedd4000 rw-p 00028000 fe:04 164491                     /usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
7fffeedd4000-7fffeee06000 r-xp 00000000 fe:04 164466                     /usr/lib/x86_64-linux-gnu/libidn.so.11.6.8
7fffeee06000-7fffef006000 ---p 00032000 fe:04 164466                     /usr/lib/x86_64-linux-gnu/libidn.so.11.6.8
7fffef006000-7fffef007000 r--p 00032000 fe:04 164466                     /usr/lib/x86_64-linux-gnu/libidn.so.11.6.8
7fffef007000-7fffef008000 rw-p 00033000 fe:04 164466                     /usr/lib/x86_64-linux-gnu/libidn.so.11.6.8
7fffef008000-7fffef014000 r-xp 00000000 fe:04 164478                     /usr/lib/x86_64-linux-gnu/libffi.so.5.0.10
7fffef014000-7fffef214000 ---p 0000c000 fe:04 164478                     /usr/lib/x86_64-linux-gnu/libffi.so.5.0.10
7fffef214000-7fffef215000 rw-p 0000c000 fe:04 164478                     /usr/lib/x86_64-linux-gnu/libffi.so.5.0.10
7fffef215000-7fffef216000 r-xp 00000000 fe:04 164481                     /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0.3200.4
7fffef216000-7fffef415000 ---p 00001000 fe:04 164481                     /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0.3200.4
7fffef415000-7fffef416000 r--p 00000000 fe:04 164481                     /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0.3200.4
7fffef416000-7fffef417000 rw-p 00001000 fe:04 164481                     /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0.3200.4
7fffef417000-7fffef50c000 r-xp 00000000 fe:00 210107                     /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4
7fffef50c000-7fffef70c000 ---p 000f5000 fe:00 210107                     /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4
7fffef70c000-7fffef70d000 r--p 000f5000 fe:00 210107                     /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4
7fffef70d000-7fffef70e000 rw-p 000f6000 fe:00 210107                     /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.4
7fffef70e000-7fffef70f000 rw-p 00000000 00:00 0
7fffef70f000-7fffef746000 r-xp 00000000 fe:04 164488                     /usr/lib/x86_64-linux-gnu/libcroco-0.6.so.3.0.1
7fffef746000-7fffef946000 ---p 00037000 fe:04 164488                     /usr/lib/x86_64-linux-gnu/libcroco-0.6.so.3.0.1
7fffef946000-7fffef949000 r--p 00037000 fe:04 164488                     /usr/lib/x86_64-linux-gnu/libcroco-0.6.so.3.0.1
7fffef949000-7fffef94a000 rw-p 0003a000 fe:04 164488                     /usr/lib/x86_64-linux-gnu/libcroco-0.6.so.3.0.1
7fffef94a000-7fffef994000 r-xp 00000000 fe:04 162418                     /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.3000.0
7fffef994000-7fffefb94000 ---p 0004a000 fe:04 162418                     /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.3000.0
7fffefb94000-7fffefb96000 r--p 0004a000 fe:04 162418                     /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.3000.0
7fffefb96000-7fffefb97000 rw-p 0004c000 fe:04 162418                     /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0.3000.0
7fffefb97000-7fffefba3000 r-xp 00000000 fe:04 162419                     /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.3000.0
7fffefba3000-7fffefda2000 ---p 0000c000 fe:04 162419                     /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.3000.0
7fffefda2000-7fffefda3000 r--p 0000b000 fe:04 162419                     /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.3000.0
7fffefda3000-7fffefda4000 rw-p 0000c000 fe:04 162419                     /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0.3000.0
7fffefda4000-7fffefef0000 r-xp 00000000 fe:04 164483                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.3200.4
7fffefef0000-7ffff00ef000 ---p 0014c000 fe:04 164483                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.3200.4
7ffff00ef000-7ffff00f3000 r--p 0014b000 fe:04 164483                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.3200.4
7ffff00f3000-7ffff00f5000 rw-p 0014f000 fe:04 164483                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.3200.4
7ffff00f5000-7ffff00f7000 rw-p 00000000 00:00 0
7ffff00f7000-7ffff0116000 r-xp 00000000 fe:04 162404                     /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.2600.1
7ffff0116000-7ffff0315000 ---p 0001f000 fe:04 162404                     /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.2600.1
7ffff0315000-7ffff0316000 r--p 0001e000 fe:04 162404                     /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.2600.1
7ffff0316000-7ffff0317000 rw-p 0001f000 fe:04 162404                     /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.2600.1
7ffff0317000-7ffff0353000 r-xp 00000000 fe:00 210105                     /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7ffff0353000-7ffff0553000 ---p 0003c000 fe:00 210105                     /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7ffff0553000-7ffff0554000 rw-p 0003c000 fe:00 210105                     /lib/x86_64-linux-gnu/libpcre.so.3.13.1
7ffff0554000-7ffff062c000 r-xp 00000000 fe:04 102313                     /usr/local/lib/libsqlite3.so.0.8.6
7ffff062c000-7ffff082b000 ---p 000d8000 fe:04 102313                     /usr/local/lib/libsqlite3.so.0.8.6
7ffff082b000-7ffff0830000 rw-p 000d7000 fe:04 102313                     /usr/local/lib/libsqlite3.so.0.8.6
7ffff0830000-7ffff083c000 r-xp 00000000 fe:04 102322                     /usr/local/lib/libfreexl.so.1.0.0
7ffff083c000-7ffff0a3b000 ---p 0000c000 fe:04 102322                     /usr/local/lib/libfreexl.so.1.0.0
7ffff0a3b000-7ffff0a3c000 rw-p 0000b000 fe:04 102322                     /usr/local/lib/libfreexl.so.1.0.0
7ffff0a3c000-7ffff0e45000 r-xp 00000000 fe:04 102334                     /usr/local/lib/libspatialite.so.5.1.0
7ffff0e45000-7ffff1044000 ---p 00409000 fe:04 102334                     /usr/local/lib/libspatialite.so.5.1.0
7ffff1044000-7ffff1048000 rw-p 00408000 fe:04 102334                     /usr/local/lib/libspatialite.so.5.1.0
7ffff1048000-7ffff106f000 r-xp 00000000 fe:00 209975                     /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7ffff106f000-7ffff126f000 ---p 00027000 fe:00 209975                     /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7ffff126f000-7ffff1271000 r--p 00027000 fe:00 209975                     /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7ffff1271000-7ffff1272000 rw-p 00029000 fe:00 209975                     /lib/x86_64-linux-gnu/libexpat.so.1.6.0
7ffff1272000-7ffff12be000 r-xp 00000000 fe:04 164152                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.8.3
7ffff12be000-7ffff14be000 ---p 0004c000 fe:04 164152                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.8.3
7ffff14be000-7ffff14c0000 r--p 0004c000 fe:04 164152                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.8.3
7ffff14c0000-7ffff14c1000 rw-p 0004e000 fe:04 164152                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.8.3
7ffff14c1000-7ffff14c3000 rw-p 00000000 00:00 0
7ffff14c3000-7ffff168d000 r-xp 00000000 fe:04 162267                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7ffff168d000-7ffff188d000 ---p 001ca000 fe:04 162267                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7ffff188d000-7ffff18a8000 r--p 001ca000 fe:04 162267                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7ffff18a8000-7ffff18b7000 rw-p 001e5000 fe:04 162267                     /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7ffff18b7000-7ffff18bb000 rw-p 00000000 00:00 0
7ffff18bb000-7ffff1911000 r-xp 00000000 fe:04 162268                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
7ffff1911000-7ffff1b11000 ---p 00056000 fe:04 162268                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
7ffff1b11000-7ffff1b14000 r--p 00056000 fe:04 162268                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
7ffff1b14000-7ffff1b1b000 rw-p 00059000 fe:04 162268                     /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
7ffff1b1b000-7ffff1e7f000 r-xp 00000000 fe:04 102292                     /usr/local/lib/libgeos-3.4.2.so
7ffff1e7f000-7ffff207f000 ---p 00364000 fe:04 102292                     /usr/local/lib/libgeos-3.4.2.so
7ffff207f000-7ffff209d000 rw-p 00364000 fe:04 102292                     /usr/local/lib/libgeos-3.4.2.so
7ffff209d000-7ffff20a4000 r-xp 00000000 fe:00 3040240                    /lib/x86_64-linux-gnu/librt-2.13.so
7ffff20a4000-7ffff22a3000 ---p 00007000 fe:00 3040240                    /lib/x86_64-linux-gnu/librt-2.13.so
7ffff22a3000-7ffff22a4000 r--p 00006000 fe:00 3040240                    /lib/x86_64-linux-gnu/librt-2.13.so
7ffff22a4000-7ffff22a5000 rw-p 00007000 fe:00 3040240                    /lib/x86_64-linux-gnu/librt-2.13.so
7ffff22a5000-7ffff23da000 r-xp 00000000 fe:04 164209                     /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7ffff23da000-7ffff25da000 ---p 00135000 fe:04 164209                     /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7ffff25da000-7ffff25e0000 rw-p 00135000 fe:04 164209                     /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7ffff25e0000-7ffff25e9000 r-xp 00000000 fe:04 162364                     /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0
7ffff25e9000-7ffff27e8000 ---p 00009000 fe:04 162364                     /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0
7ffff27e8000-7ffff27e9000 rw-p 00008000 fe:04 162364                     /usr/lib/x86_64-linux-gnu/libXrender.so.1.3.0
7ffff27e9000-7ffff2808000 r-xp 00000000 fe:04 164207                     /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7ffff2808000-7ffff2a07000 ---p 0001f000 fe:04 164207                     /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7ffff2a07000-7ffff2a08000 r--p 0001e000 fe:04 164207                     /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7ffff2a08000-7ffff2a09000 rw-p 0001f000 fe:04 164207                     /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7ffff2a09000-7ffff2a11000 r-xp 00000000 fe:04 162388                     /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7ffff2a11000-7ffff2c11000 ---p 00008000 fe:04 162388                     /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7ffff2c11000-7ffff2c12000 r--p 00008000 fe:04 162388                     /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7ffff2c12000-7ffff2c13000 rw-p 00009000 fe:04 162388                     /usr/lib/x86_64-linux-gnu/libxcb-render.so.0.0.0
7ffff2c13000-7ffff2c15000 r-xp 00000000 fe:04 162390                     /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7ffff2c15000-7ffff2e14000 ---p 00002000 fe:04 162390                     /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7ffff2e14000-7ffff2e15000 r--p 00001000 fe:04 162390                     /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7ffff2e15000-7ffff2e16000 rw-p 00002000 fe:04 162390                     /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0.0.0
7ffff2e16000-7ffff2e4b000 r-xp 00000000 fe:04 162317                     /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.5.0
7ffff2e4b000-7ffff304b000 ---p 00035000 fe:04 162317                     /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.5.0
7ffff304b000-7ffff304c000 r--p 00035000 fe:04 162317                     /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.5.0
7ffff304c000-7ffff304d000 rw-p 00036000 fe:04 162317                     /usr/lib/x86_64-linux-gnu/libfontconfig.so.1.5.0
7ffff304d000-7ffff30cd000 r-xp 00000000 fe:04 162474                     /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.26.0
7ffff30cd000-7ffff32cd000 ---p 00080000 fe:04 162474                     /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.26.0
7ffff32cd000-7ffff32d3000 rw-p 00080000 fe:04 162474                     /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.26.0
7ffff32d3000-7ffff32ea000 r-xp 00000000 fe:00 3040238                    /lib/x86_64-linux-gnu/libpthread-2.13.so
7ffff32ea000-7ffff34e9000 ---p 00017000 fe:00 3040238                    /lib/x86_64-linux-gnu/libpthread-2.13.so
7ffff34e9000-7ffff34ea000 r--p 00016000 fe:00 3040238                    /lib/x86_64-linux-gnu/libpthread-2.13.so
7ffff34ea000-7ffff34eb000 rw-p 00017000 fe:00 3040238                    /lib/x86_64-linux-gnu/libpthread-2.13.so
7ffff34eb000-7ffff34ef000 rw-p 00000000 00:00 0
7ffff34ef000-7ffff3504000 r-xp 00000000 fe:00 209973                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff3504000-7ffff3704000 ---p 00015000 fe:00 209973                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff3704000-7ffff3705000 rw-p 00015000 fe:00 209973                     /lib/x86_64-linux-gnu/libgcc_s.so.1
7ffff3705000-7ffff37ed000 r-xp 00000000 fe:04 164071                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7ffff37ed000-7ffff39ed000 ---p 000e8000 fe:04 164071                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7ffff39ed000-7ffff39f5000 r--p 000e8000 fe:04 164071                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7ffff39f5000-7ffff39f7000 rw-p 000f0000 fe:04 164071                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7ffff39f7000-7ffff3a0c000 rw-p 00000000 00:00 0
7ffff3a0c000-7ffff3b8e000 r-xp 00000000 fe:00 3040212                    /lib/x86_64-linux-gnu/libc-2.13.so
7ffff3b8e000-7ffff3d8d000 ---p 00182000 fe:00 3040212                    /lib/x86_64-linux-gnu/libc-2.13.so
7ffff3d8d000-7ffff3d91000 r--p 00181000 fe:00 3040212                    /lib/x86_64-linux-gnu/libc-2.13.so
7ffff3d91000-7ffff3d92000 rw-p 00185000 fe:00 3040212                    /lib/x86_64-linux-gnu/libc-2.13.so
7ffff3d92000-7ffff3d97000 rw-p 00000000 00:00 0
7ffff3d97000-7ffff3e18000 r-xp 00000000 fe:00 3040227                    /lib/x86_64-linux-gnu/libm-2.13.so
7ffff3e18000-7ffff4017000 ---p 00081000 fe:00 3040227                    /lib/x86_64-linux-gnu/libm-2.13.so
7ffff4017000-7ffff4018000 r--p 00080000 fe:00 3040227                    /lib/x86_64-linux-gnu/libm-2.13.so
7ffff4018000-7ffff4019000 rw-p 00081000 fe:00 3040227                    /lib/x86_64-linux-gnu/libm-2.13.so
7ffff4019000-7ffff401b000 r-xp 00000000 fe:00 3040234                    /lib/x86_64-linux-gnu/libdl-2.13.so
7ffff401b000-7ffff421b000 ---p 00002000 fe:00 3040234                    /lib/x86_64-linux-gnu/libdl-2.13.so
7ffff421b000-7ffff421c000 r--p 00002000 fe:00 3040234                    /lib/x86_64-linux-gnu/libdl-2.13.so
7ffff421c000-7ffff421d000 rw-p 00003000 fe:00 3040234                    /lib/x86_64-linux-gnu/libdl-2.13.so
7ffff421d000-7ffff4225000 r-xp 00000000 fe:04 11188                      /usr/lib/libgif.so.4.1.6
7ffff4225000-7ffff4424000 ---p 00008000 fe:04 11188                      /usr/lib/libgif.so.4.1.6
7ffff4424000-7ffff4425000 r--p 00007000 fe:04 11188                      /usr/lib/libgif.so.4.1.6
7ffff4425000-7ffff4426000 rw-p 00008000 fe:04 11188                      /usr/lib/libgif.so.4.1.6
7ffff4426000-7ffff457b000 r-xp 00000000 fe:04 162185                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.8.0
7ffff457b000-7ffff477b000 ---p 00155000 fe:04 162185                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.8.0
7ffff477b000-7ffff4783000 r--p 00155000 fe:04 162185                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.8.0
7ffff4783000-7ffff4785000 rw-p 0015d000 fe:04 162185                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.8.0
7ffff4785000-7ffff4786000 rw-p 00000000 00:00 0
7ffff4786000-7ffff47ec000 r-xp 00000000 fe:04 162157                     /usr/lib/x86_64-linux-gnu/libcurl.so.4.2.0
7ffff47ec000-7ffff49eb000 ---p 00066000 fe:04 162157                     /usr/lib/x86_64-linux-gnu/libcurl.so.4.2.0
7ffff49eb000-7ffff49ee000 r--p 00065000 fe:04 162157                     /usr/lib/x86_64-linux-gnu/libcurl.so.4.2.0
7ffff49ee000-7ffff49ef000 rw-p 00068000 fe:04 162157                     /usr/lib/x86_64-linux-gnu/libcurl.so.4.2.0
7ffff49ef000-7ffff4a3d000 r-xp 00000000 fe:04 164480                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.4
7ffff4a3d000-7ffff4c3d000 ---p 0004e000 fe:04 164480                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.4
7ffff4c3d000-7ffff4c3e000 r--p 0004e000 fe:04 164480                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.4
7ffff4c3e000-7ffff4c3f000 rw-p 0004f000 fe:04 164480                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.4
7ffff4c3f000-7ffff4c74000 r-xp 00000000 fe:04 162834                     /usr/lib/x86_64-linux-gnu/librsvg-2.so.2.36.1
7ffff4c74000-7ffff4e73000 ---p 00035000 fe:04 162834                     /usr/lib/x86_64-linux-gnu/librsvg-2.so.2.36.1
7ffff4e73000-7ffff4e74000 r--p 00034000 fe:04 162834                     /usr/lib/x86_64-linux-gnu/librsvg-2.so.2.36.1
7ffff4e74000-7ffff4e75000 rw-p 00035000 fe:04 162834                     /usr/lib/x86_64-linux-gnu/librsvg-2.so.2.36.1
7ffff4e75000-7ffff5dbd000 r-xp 00000000 fe:04 102338                     /usr/local/lib/libgdal.so.1.17.1
7ffff5dbd000-7ffff5fbc000 ---p 00f48000 fe:04 102338                     /usr/local/lib/libgdal.so.1.17.1
7ffff5fbc000-7ffff60c4000 rw-p 00f47000 fe:04 102338                     /usr/local/lib/libgdal.so.1.17.1
7ffff60c4000-7ffff60c6000 rw-p 00000000 00:00 0
7ffff60c6000-7ffff60f9000 r-xp 00000000 fe:04 246787                     /usr/local/pgsql/lib/libpq.so.5.6
7ffff60f9000-7ffff62f9000 ---p 00033000 fe:04 246787                     /usr/local/pgsql/lib/libpq.so.5.6
7ffff62f9000-7ffff62fc000 rw-p 00033000 fe:04 246787                     /usr/local/pgsql/lib/libpq.so.5.6
7ffff62fc000-7ffff633a000 r-xp 00000000 fe:04 102295                     /usr/local/lib/libgeos_c.so.1.8.2
7ffff633a000-7ffff6539000 ---p 0003e000 fe:04 102295                     /usr/local/lib/libgeos_c.so.1.8.2
7ffff6539000-7ffff653b000 rw-p 0003d000 fe:04 102295                     /usr/local/lib/libgeos_c.so.1.8.2
7ffff653b000-7ffff662f000 r-xp 00000000 fe:04 162392                     /usr/lib/x86_64-linux-gnu/libcairo.so.2.11200.2
7ffff662f000-7ffff682e000 ---p 000f4000 fe:04 162392                     /usr/lib/x86_64-linux-gnu/libcairo.so.2.11200.2
7ffff682e000-7ffff6831000 r--p 000f3000 fe:04 162392                     /usr/lib/x86_64-linux-gnu/libcairo.so.2.11200.2
7ffff6831000-7ffff6832000 rw-p 000f6000 fe:04 162392                     /usr/lib/x86_64-linux-gnu/libcairo.so.2.11200.2
7ffff6832000-7ffff6834000 rw-p 00000000 00:00 0
7ffff6834000-7ffff68d9000 r-xp 00000000 fe:04 98680                      /usr/local/lib/libharfbuzz.so.0.921.0
7ffff68d9000-7ffff6ad8000 ---p 000a5000 fe:04 98680                      /usr/local/lib/libharfbuzz.so.0.921.0
7ffff6ad8000-7ffff6ada000 rw-p 000a4000 fe:04 98680                      /usr/local/lib/libharfbuzz.so.0.921.0
7ffff6ada000-7ffff6aef000 r-xp 00000000 fe:04 16442                      /usr/lib/x86_64-linux-gnu/libfribidi.so.0.3.1
7ffff6aef000-7ffff6cee000 ---p 00015000 fe:04 16442                      /usr/lib/x86_64-linux-gnu/libfribidi.so.0.3.1
7ffff6cee000-7ffff6cef000 r--p 00014000 fe:04 16442                      /usr/lib/x86_64-linux-gnu/libfribidi.so.0.3.1
7ffff6cef000-7ffff6cf0000 rw-p 00015000 fe:04 16442                      /usr/lib/x86_64-linux-gnu/libfribidi.so.0.3.1
7ffff6cf0000-7ffff6d55000 r-xp 00000000 fe:04 97688                      /usr/local/lib/libproj.so.0.7.0
7ffff6d55000-7ffff6f54000 ---p 00065000 fe:04 97688                      /usr/local/lib/libproj.so.0.7.0
7ffff6f54000-7ffff6f58000 rw-p 00064000 fe:04 97688                      /usr/local/lib/libproj.so.0.7.0
7ffff6f58000-7ffff6ff1000 r-xp 00000000 fe:04 164168                     /usr/lib/x86_64-linux-gnu/libfreetype.so.6.8.1
7ffff6ff1000-7ffff71f0000 ---p 00099000 fe:04 164168                     /usr/lib/x86_64-linux-gnu/libfreetype.so.6.8.1
7ffff71f0000-7ffff71f6000 r--p 00098000 fe:04 164168                     /usr/lib/x86_64-linux-gnu/libfreetype.so.6.8.1
7ffff71f6000-7ffff71f7000 rw-p 0009e000 fe:04 164168                     /usr/lib/x86_64-linux-gnu/libfreetype.so.6.8.1
7ffff71f7000-7ffff7231000 r-xp 00000000 fe:04 162300                     /usr/lib/x86_64-linux-gnu/libjpeg.so.8.4.0
7ffff7231000-7ffff7430000 ---p 0003a000 fe:04 162300                     /usr/lib/x86_64-linux-gnu/libjpeg.so.8.4.0
7ffff7430000-7ffff7431000 rw-p 00039000 fe:04 162300                     /usr/lib/x86_64-linux-gnu/libjpeg.so.8.4.0
7ffff7431000-7ffff7447000 r-xp 00000000 fe:00 210018                     /lib/x86_64-linux-gnu/libz.so.1.2.7
7ffff7447000-7ffff7646000 ---p 00016000 fe:00 210018                     /lib/x86_64-linux-gnu/libz.so.1.2.7
7ffff7646000-7ffff7647000 r--p 00015000 fe:00 210018                     /lib/x86_64-linux-gnu/libz.so.1.2.7
7ffff7647000-7ffff7648000 rw-p 00016000 fe:00 210018                     /lib/x86_64-linux-gnu/libz.so.1.2.7
7ffff7648000-7ffff766e000 r-xp 00000000 fe:00 210111                     /lib/x86_64-linux-gnu/libpng12.so.0.49.0
7ffff766e000-7ffff786d000 ---p 00026000 fe:00 210111                     /lib/x86_64-linux-gnu/libpng12.so.0.49.0
7ffff786d000-7ffff786e000 r--p 00025000 fe:00 210111                     /lib/x86_64-linux-gnu/libpng12.so.0.49.0
7ffff786e000-7ffff786f000 rw-p 00026000 fe:00 210111                     /lib/x86_64-linux-gnu/libpng12.so.0.49.0
7ffff786f000-7ffff7b49000 r-xp 00000000 fe:00 291358                     /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.6.5-dev
7ffff7b49000-7ffff7d48000 ---p 002da000 fe:00 291358                     /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.6.5-dev
7ffff7d48000-7ffff7ddc000 rw-p 002d9000 fe:00 291358                     /home/archivio/tomcat/software/mapserver/mapserver-svn/build-master/libmapserver.so.6.5-dev
7ffff7ddc000-7ffff7ddd000 rw-p 00000000 00:00 0
7ffff7ddd000-7ffff7dfd000 r-xp 00000000 fe:00 3040242                    /lib/x86_64-linux-gnu/ld-2.13.so
7ffff7e3a000-7ffff7fe9000 rw-p 00000000 00:00 0
7ffff7ff5000-7ffff7ffb000 rw-p 00000000 00:00 0
7ffff7ffb000-7ffff7ffc000 r-xp 00000000 00:00 0                          [vdso]
7ffff7ffc000-7ffff7ffd000 r--p 0001f000 fe:00 3040242                    /lib/x86_64-linux-gnu/ld-2.13.so
7ffff7ffd000-7ffff7ffe000 rw-p 00020000 fe:00 3040242                    /lib/x86_64-linux-gnu/ld-2.13.so
7ffff7ffe000-7ffff7fff000 rw-p 00000000 00:00 0
7ffffffde000-7ffffffff000 rw-p 00000000 00:00 0                          [stack]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Program received signal SIGABRT, Aborted.
0x00007ffff3a3e475 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb)
(gdb)

I try to understand something , but I'm not skill on gdb.

any hint is welcome.

@tbonfort
Copy link
Member

tbonfort commented Jul 31, 2014

Can you provide me a testcase please...

@aperi2007
Copy link
Author

aperi2007 commented Jul 31, 2014

of course.

this is the testcase I use in my tests.

A.

@aperi2007
Copy link
Author

aperi2007 commented Aug 1, 2014

Hi,
just now I notice that the issue is opened as issue of mapserver 6.4.2.

Instead is should be an issue on master.
I don't know how change this setting.
Sorry.

@tbonfort
Copy link
Member

tbonfort commented Aug 1, 2014

@aperi2007 you should send the testcase (mapfile+data) to me directly, you cannot attach it to a github issue

@tbonfort tbonfort modified the milestones: 6.4.2 release, 7.0 Release Aug 1, 2014
@aperi2007
Copy link
Author

aperi2007 commented Aug 1, 2014

@tbonfort
I'm sorry for my bad.
Hope this not mean some trouble to the issue system.
Please let me know if I can do something to help or if I should resend you the testcase.

@tbonfort
Copy link
Member

tbonfort commented Aug 1, 2014

@aperi2007 yes please resend me the testcase at thomas.bonfort on gmail.com

@aperi2007 aperi2007 changed the title Mapserver crash when the text label has some bracket in it Mapserver crash when the text label from styleitem has some bracket in it Aug 3, 2014
@tbonfort
Copy link
Member

tbonfort commented Aug 4, 2014

The (N.3) label text is being interpreted as an expression instead of a simple string by mapserver. I would argue that OGR autostyle'd text should be treated literally and not as a mapserver expression, the proposed pull-request fixes this. cc/ @sdlime @dmorissette @szekerest => comments?

@szekerest
Copy link
Member

szekerest commented Aug 4, 2014

It's hard to imagine a case where it makes sense to treat OGR label style texts as mapserver expressions, so I would not object to this change.

@dmorissette
Copy link
Contributor

dmorissette commented Aug 4, 2014

I agree with the fix. Thank you for taking care of it.

@aperi2007
Copy link
Author

aperi2007 commented Aug 18, 2014

Hi,
is possible to commit this patch before mapserver 7.0 ?

@tbonfort
Copy link
Member

tbonfort commented Aug 19, 2014

@sdlime, although this patch works around the issue, I think we should investigate more as the parser is behaving badly in this case, namely p.result.strval is used uninitialized at https://github.com/mapserver/mapserver/blob/8e85fce4b15d098983b7758c80a60d9afee0cd40/maputil.c#L670 . I imagine this is happening because we are entering the switch with yyn==2 at https://github.com/mapserver/mapserver/blob/8e85fce4b15d098983b7758c80a60d9afee0cd40/mapparser.c#L1647

@tbonfort
Copy link
Member

tbonfort commented Aug 26, 2014

applied in e841969

@tbonfort tbonfort closed this Aug 26, 2014
@sdlime
Copy link
Member

sdlime commented Aug 26, 2014

@tbonfort, do you think we still need more investigation into why the parser is behaving badly?

@tbonfort
Copy link
Member

tbonfort commented Aug 26, 2014

@sdlime if you could have a look that would be great. I'd like to be sure this can't be triggered remotely

@sdlime
Copy link
Member

sdlime commented Aug 27, 2014

What does the mapfile look like? --Steve

From: Thomas Bonfort [mailto:notifications@github.com]
Sent: Tuesday, August 26, 2014 8:30 AM
To: mapserver/mapserver
Cc: Lime, Steve D (MNIT)
Subject: Re: [mapserver] Mapserver crash when the text label from styleitem has some bracket in it (#4965)

@sdlimehttps://github.com/sdlime if you could have a look that would be great. I'd like to be sure this can't be triggered remotely


Reply to this email directly or view it on GitHubhttps://github.com//pull/4965#issuecomment-53419882.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants