kiuliani / geoda

Automatically exported from code.google.com/p/geoda
GNU General Public License v3.0
0 stars 0 forks source link

Basemap: GeoDa crashes after open/close several maps using basemap #186

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Basemap: GeoDa crashes after open/close several maps using basemap

Original issue reported on code.google.com by lixun...@gmail.com on 30 Jun 2015 at 7:31

GoogleCodeExporter commented 8 years ago
This is a incompatible issue of libcurl library + a configuration in libcurl 
for multi-threading.

The crash is caused at
0 libcurl.4.dylib 0x00788714 addbyter + 36 
1 libcurl.4.dylib 0x00788881 dprintf_formatf + 289 
2 libcurl.4.dylib 0x0078a207 curl_mvsnprintf + 55 
3 libcurl.4.dylib 0x0077737f Curl_failf + 63 
4 libcurl.4.dylib 0x0076e0e2 Curl_resolv_timeout + 578 

On searching the curl mailing list, I found that I need to compile cURL with 
c-ares enabled. 

Another potential crash point is for multi-threaded libcurl calling -- libcurl 
is called in multi-threads to download tiles. However, when thread is 
terminated and libcurl is still working, there might be a crash.

Solution: CURLOPT_NOSIGNAL should be set to 1 -- " libcurl will not use any 
functions that install signal handlers or any functions that cause signals to 
be sent to the process. This option is here to allow multi-threaded unix 
applications to still set/use all timeout options etc, without risking getting 
signals."

Original comment by lixun...@gmail.com on 30 Jun 2015 at 7:57

GoogleCodeExporter commented 8 years ago
Change status back to Accepted, since the fix hasn't been applied to any new 
build

Original comment by lixun...@gmail.com on 30 Jun 2015 at 9:24

GoogleCodeExporter commented 8 years ago
fix has been applied in versions >= 1.7.35

Original comment by lixun...@gmail.com on 2 Jul 2015 at 5:59