[Marble-devel] Review Request: Add a clear() method to AbstractDataPluginModel, need help avoiding crashes due to concurrent accesses

Torsten Rahn tackat at kde.org
Sat Sep 10 17:04:19 UTC 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102373/#review6392
-----------------------------------------------------------


If this patch gets committed then the problem should be documented in the API documentation. 

- Torsten


On Aug. 19, 2011, 5 p.m., Guillaume Martres wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/102373/
> -----------------------------------------------------------
> 
> (Updated Aug. 19, 2011, 5 p.m.)
> 
> 
> Review request for Marble, Bastian Holst and Thibaut Gridel.
> 
> 
> Summary
> -------
> 
> For the satellites plugin I need a way to remove every item from the model each time the datasets are downloaded(every few hours, and each time the user changes the settings in the config dialog).
> This patch shows a buggy way to do so. It leads to a crash when clear() is called concurrently with AbstractDataPluginModel::items(), for example because of a paintEvent(), see the backtrace at http://paste.kde.org/111817/
> I can't seem to find a good way to fix that without introducing locking. Maybe a refactoring/rewrite of AbstractDataPluginModel is needed?
> 
> 
> Diffs
> -----
> 
>   src/lib/AbstractDataPluginModel.h 1e75ba0 
>   src/lib/AbstractDataPluginModel.cpp abf77e2 
> 
> Diff: http://git.reviewboard.kde.org/r/102373/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Guillaume
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20110910/7eb592c7/attachment.html>


More information about the Marble-devel mailing list