Re: Subsurface-mobile crash on deleting dive from dive list
Jusf installed the app. Created and deleted a few test dives with no crash until now On Aug 10, 2017 19:41, "Dirk Hohndel"wrote: > On Thu, Aug 10, 2017 at 06:51:57PM +1000, Rick Walsh wrote: > > >> > > > >> > This is not a new bug, and has been reported before, but I think > it's > > >> one that should be eliminated before the next release. When deleting > a > > >> dive from the dive list (select the dive from the list but hold down > until > > >> the trash icon appears, then select the trash icon), the app will > crash... > > >> sometimes. But sometimes it works. > > >> > > >> I have spent many hours on this. Yes, we either need to fix this or > > >> remove the feature. > > >> > > > I agree, I meant to say we should remove the feature if we can't fix > it. > > > > > >> This won't prevent another beta (it's not a regression, it's broken in > > >> the current beta), but it will prevent the actual release of 2.0. > > > > > > > > > > > My suspicion is that somehow our different models get out of sync. But > > >> it's really, really hard to debug this :-( > > >> > > > > > > Indeed it is > > > > > Unfortunately I don't understand how or why the models get out of sync, > but > > I just made a one-line pull request. And this time, in my testing at > least, > > the bug has been fixed. Please test more. > > Cool. I just pulled a couple of the PRs and have a new APK up - it would > be great if people could test if this indeed fixes that annoying crash. > Thanks for your persistence, Rick. > > I also have new Windows / OBS / Launchpad builds happening. I am not sure > if the Linux builds are currently working correctly (with the map widget > changes - I ran out of time testing those before heaing on family > vacation), but the Windows one should be OK (and that one includes a few > of the other bug fixes that were posted) > > /D > ___ > subsurface mailing list > subsurface@subsurface-divelog.org > http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface > ___ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
Re: Subsurface-mobile crash on deleting dive from dive list
On Thu, Aug 10, 2017 at 06:51:57PM +1000, Rick Walsh wrote: > >> > > >> > This is not a new bug, and has been reported before, but I think it's > >> one that should be eliminated before the next release. When deleting a > >> dive from the dive list (select the dive from the list but hold down until > >> the trash icon appears, then select the trash icon), the app will crash... > >> sometimes. But sometimes it works. > >> > >> I have spent many hours on this. Yes, we either need to fix this or > >> remove the feature. > >> > > I agree, I meant to say we should remove the feature if we can't fix it. > > > >> This won't prevent another beta (it's not a regression, it's broken in > >> the current beta), but it will prevent the actual release of 2.0. > > > > > > > My suspicion is that somehow our different models get out of sync. But > >> it's really, really hard to debug this :-( > >> > > > > Indeed it is > > > Unfortunately I don't understand how or why the models get out of sync, but > I just made a one-line pull request. And this time, in my testing at least, > the bug has been fixed. Please test more. Cool. I just pulled a couple of the PRs and have a new APK up - it would be great if people could test if this indeed fixes that annoying crash. Thanks for your persistence, Rick. I also have new Windows / OBS / Launchpad builds happening. I am not sure if the Linux builds are currently working correctly (with the map widget changes - I ran out of time testing those before heaing on family vacation), but the Windows one should be OK (and that one includes a few of the other bug fixes that were posted) /D ___ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
Re: Subsurface-mobile crash on deleting dive from dive list
On 6 August 2017 at 12:55, Rick Walshwrote: > > > On 4 August 2017 at 14:11, Dirk Hohndel wrote: > >> >> > On Aug 3, 2017, at 3:49 PM, Rick Walsh wrote: >> > >> > Hi, >> > >> > This is not a new bug, and has been reported before, but I think it's >> one that should be eliminated before the next release. When deleting a >> dive from the dive list (select the dive from the list but hold down until >> the trash icon appears, then select the trash icon), the app will crash... >> sometimes. But sometimes it works. >> >> I have spent many hours on this. Yes, we either need to fix this or >> remove the feature. >> > I agree, I meant to say we should remove the feature if we can't fix it. > >> This won't prevent another beta (it's not a regression, it's broken in >> the current beta), but it will prevent the actual release of 2.0. > > > My suspicion is that somehow our different models get out of sync. But >> it's really, really hard to debug this :-( >> > > Indeed it is > Unfortunately I don't understand how or why the models get out of sync, but I just made a one-line pull request. And this time, in my testing at least, the bug has been fixed. Please test more. Cheers, Rick ___ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
Re: Subsurface-mobile crash on deleting dive from dive list
On 4 August 2017 at 14:11, Dirk Hohndelwrote: > > > On Aug 3, 2017, at 3:49 PM, Rick Walsh wrote: > > > > Hi, > > > > This is not a new bug, and has been reported before, but I think it's > one that should be eliminated before the next release. When deleting a > dive from the dive list (select the dive from the list but hold down until > the trash icon appears, then select the trash icon), the app will crash... > sometimes. But sometimes it works. > > I have spent many hours on this. Yes, we either need to fix this or remove > the feature. > I agree, I meant to say we should remove the feature if we can't fix it. > This won't prevent another beta (it's not a regression, it's broken in the > current beta), but it will prevent the actual release of 2.0. > > > The most reliable way I have come up with to reproduce the bug (crash > just occurred 3 of 4 times) is: > > 1) select a dive from somewhere in the list - dive details page will open > > 2) hit back button to return to dive list, with dive still selected > > 3) go to menu and open another page (e.g. 'About' or 'Settings') > > 4) hit back button to return to dive list, with dive still selected > > 5) hold down on the selected dive so the trash icon appears > > 6) crash... > > > > That isn't the only way to reproduce the bug, but it's the most reliable > way I have found. I think it has something to do with deleting the > currently selected dive, without properly selecting another dive. > > > > Below is an extract from my subsurface log. > > TouchPointPressed without previous release event > QQuickEventPoint(valid:true accepted:false state:Pressed > scenePos:QPointF(70.,415) id:201 timeHeld:0) > > The item DiveDetails_QMLTYPE_71(0xcb0e14e0) is already in the PageRow > > Both point size and pixel size set. Using pixel size. > > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > > Both point size and pixel size set. Using pixel size. > > Both point size and pixel size set. Using pixel size. > > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > > Both point size and pixel size set. Using pixel size. > > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > > Both point size and pixel size set. Using pixel size. > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > Both point size and pixel size set. Using pixel size. > > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > > Both point size and pixel size set. Using pixel size. > > Both point size and pixel size set. Using pixel size. > > "846.350: Synchronising data file" > > qrc:///qml/DiveDetailsEdit.qml:254: TypeError: Cannot read property > 'dive' of null > > qrc:///qml/DiveDetailsEdit.qml:228: TypeError: Cannot read property > 'dive' of null > > qrc:///qml/DiveDetailsEdit.qml:216: TypeError: Cannot read property > 'dive' of null > > qrc:///qml/DiveDetailsEdit.qml:204: TypeError: Cannot read property > 'dive' of null > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > QObject::startTimer: Timers cannot be started from another thread > > "846.578: Preparing to save data" > > "846.621: Start saving data" > > "846.687: Start saving dives" > > "846.727: Done creating local cache" > > > > The TypeError lines (254, 228, 216, 204) in DiveDetailsEdit.qml are > similar. > > HintsTextEdit { > > id: cylinderBox > > ***Line 254***model: diveDetailsListView.currentItem ? > diveDetailsListView.currentItem.modelData.dive.cylinderList : null > > inputMethodHints: Qt.ImhNoPredictiveText > > Layout.fillWidth: true > > > I sent a pull request to fix the TypeErrors, but unfortunately it doesn't stop the crash. > > My suspicion is that somehow our different models get out of sync. But > it's really, really hard to debug this :-( > Indeed it is ___ subsurface mailing list
Re: Subsurface-mobile crash on deleting dive from dive list
> On Aug 3, 2017, at 3:49 PM, Rick Walshwrote: > > Hi, > > This is not a new bug, and has been reported before, but I think it's one > that should be eliminated before the next release. When deleting a dive from > the dive list (select the dive from the list but hold down until the trash > icon appears, then select the trash icon), the app will crash... sometimes. > But sometimes it works. I have spent many hours on this. Yes, we either need to fix this or remove the feature. This won't prevent another beta (it's not a regression, it's broken in the current beta), but it will prevent the actual release of 2.0. > The most reliable way I have come up with to reproduce the bug (crash just > occurred 3 of 4 times) is: > 1) select a dive from somewhere in the list - dive details page will open > 2) hit back button to return to dive list, with dive still selected > 3) go to menu and open another page (e.g. 'About' or 'Settings') > 4) hit back button to return to dive list, with dive still selected > 5) hold down on the selected dive so the trash icon appears > 6) crash... > > That isn't the only way to reproduce the bug, but it's the most reliable way > I have found. I think it has something to do with deleting the currently > selected dive, without properly selecting another dive. > > Below is an extract from my subsurface log. > TouchPointPressed without previous release event QQuickEventPoint(valid:true > accepted:false state:Pressed scenePos:QPointF(70.,415) id:201 > timeHeld:0) > The item DiveDetails_QMLTYPE_71(0xcb0e14e0) is already in the PageRow > Both point size and pixel size set. Using pixel size. > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > Both point size and pixel size set. Using pixel size. > Both point size and pixel size set. Using pixel size. > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > Both point size and pixel size set. Using pixel size. > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > Both point size and pixel size set. Using pixel size. > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > Both point size and pixel size set. Using pixel size. > qrc:/templates/ApplicationHeader.qml:84:13: QML Heading: Binding loop > detected for property "width" > Both point size and pixel size set. Using pixel size. > Both point size and pixel size set. Using pixel size. > "846.350: Synchronising data file" > qrc:///qml/DiveDetailsEdit.qml:254: TypeError: Cannot read property 'dive' of > null > qrc:///qml/DiveDetailsEdit.qml:228: TypeError: Cannot read property 'dive' of > null > qrc:///qml/DiveDetailsEdit.qml:216: TypeError: Cannot read property 'dive' of > null > qrc:///qml/DiveDetailsEdit.qml:204: TypeError: Cannot read property 'dive' of > null > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > QObject::startTimer: Timers cannot be started from another thread > "846.578: Preparing to save data" > "846.621: Start saving data" > "846.687: Start saving dives" > "846.727: Done creating local cache" > > The TypeError lines (254, 228, 216, 204) in DiveDetailsEdit.qml are similar. > HintsTextEdit { > id: cylinderBox > ***Line 254***model: diveDetailsListView.currentItem ? > diveDetailsListView.currentItem.modelData.dive.cylinderList : null > inputMethodHints: Qt.ImhNoPredictiveText > Layout.fillWidth: true > My suspicion is that somehow our different models get out of sync. But it's really, really hard to debug this :-( /D ___ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface