Fix a problem:asynchrously replying to an aborted request would cause a segmentation fault
蔡火胜
Branch: hxcan/libqxt:master
hxcan/libqxt:master
Branch: libqxt/libqxt:master
libqxt/libqxt:master
Open
#24 · Created · Last updated
Description
If you create an asynchorous webservice,which didn't reply immediately in the indexRequested function,but reply later. Then replying to an aborted request would cause qxtabstracthttpconnector try to connect a signal of a "device" object that is 0, that would in turner cause a segmentation fault. The request was aborted ,so "QIODevice* device = connector()->getRequestConnection(requestID);" this statement returns 0 as the device variable. I added some code to just ignore the event if the request was aborted earlier.But I don't know whether we should do other cleanings.
If you create an asynchorous webservice,which didn't reply immediately in the indexRequested function,but reply later. Then replying to an aborted request would cause qxtabstracthttpconnector try to connect a signal of a "device" object that is 0, that would in turner cause a segmentation fault. The request was aborted ,so "QIODevice* device = connector()->getRequestConnection(requestID);" this statement returns 0 as the device variable. I added some code to just ignore the event if the request was aborted earlier.But I don't know whether we should do other cleanings.