Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#918 closed defect (fixed)

WMS provider segfaults when creating connection, crashing client application

Reported by: jng Owned by: gregboone
Priority: blocker Milestone: 4.1.0
Component: WMS Provider Version: 4.0.0
Severity: 1 Keywords:
Cc: External ID:

Description

In MapGuide?, the WMS provider segfaults when attempting to create a FDO connection, crashing the mgserver process. The stack trace when run through gdb does not provide any useful information other than something in libWMSProvider.so (the function shows as ?? on CentOS, on Ubuntu 14 the function shows as _init) is the cause of the segfault.

Through trial and error of various FDO trunk revisions (to determine when things started to break), it was identified the offending revision to be r7257. This revision updated the vcxproj file on Windows, but failed to update the matching Makefile.am files for Linux. As a result, the WMS provider got compiled with what I gather to be undefined symbols that is the cause of the segfault (how gcc/ld didn't catch this or treat this as an error I will never know!)

Attached is a patch to include the new .cpp/.h files in the respective Makefile.am files.

This needs to be applied on trunk and 4.1 branches and is currently blocking the release of MapGuide? Open Source 3.1, which does not have a functional WMS provider due to this issue.

Attachments (1)

fix_wms_segfault.patch (1.3 KB) - added by jng 3 years ago.

Download all attachments as: .zip

Change History (3)

Changed 3 years ago by jng

Attachment: fix_wms_segfault.patch added

comment:1 Changed 3 years ago by jng

Resolution: fixed
Status: newclosed

In 7480:

Fix #918: Add missing files to Makefile.am for WMS provider whose absence is causing the FDO provider to segfault when MapGuide? creates a WMS connection on Linux. Reviewed by Greg Boone

comment:2 Changed 3 years ago by jng

In 7481:

Merged revision(s) 7480 from trunk:
Fix #918: Add missing files to Makefile.am for WMS provider whose absence is causing the FDO provider to segfault when MapGuide? creates a WMS connection on Linux. Reviewed by Greg Boone
........

Note: See TracTickets for help on using tickets.