Appmgr doesn't clear its current settings when an application exits
|Status:||Closed||Start date:||03 Nov 2014|
|Target version:||PiBox - 0.10.0|
|Severity:||02 - High|
When the app exits the appmgr doesn't clear its current settings so if the user tries to re-enter the same app nothing happens. The user has to go to a different app, exit that one, and then go back to the original app to start it a second time.
#1 Updated by Hammel about 4 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 20
I think the way to handle this is to call a version of queueProcessor.c:stopCurrent() that only clears the currentPID and currentPath and doesn't wait on or try to kill the current process. This is because the waiter() function has already waited on the child and noted that it exited, which is why we need to reset.
The current method works by trying to start the new app and then killing the old one because currentPath is still set even though that app has exited. The launcher will only start a new app after the old one has exited so the launcher will never use that methodology. However, a remote app (Android or iOS) could. So with the launcher we always want to run queueProcessor.c:handler():MT_START where currentPath == NULL but not necessarily so with remote apps.
#2 Updated by Hammel about 4 years ago
- Status changed from In Progress to Closed
- % Done changed from 20 to 100
Cleared the current settings when the current app exits on its own. This allows the current app to be restarted without having to start a different app first.
Tested by start/stopping videofe repeatedly. Seems to work fine.