View Issue Details

IDProjectCategoryView StatusLast Update
00305662.x IDE BugsSavingPublic2019-04-09 11:35
ReporterStewart BishopAssigned ToAlexander Borup 
PriorityMediumSeverityC - GeneralReproducibility100%
Status AssignedResolutionOpen 
Product Version2.2.2 
Target VersionFixed in Version 
Summary0030566: Saving: File watcher triggers a modified externally warning if you have unsaved empty room creation code
DescriptionIf you have an unsaved room with blank room creation code, when you close the room you will incorrectly (as far as the user is concerned) get a dialogue that your project has been modified externally and if you click "reload", you will lose your work.

Similarly, removing all the room creation code for a room and then immediately closing the room can also cause the same dialog.
Steps To Reproduce1) Create a project
2) Create a second room
3) Open the creation code for the second room, but don't type anything in
4) Close the room via its workspace tab
5) Wait a few seconds (whilst now back on Workspace 1)
6) See that this triggers a project modified (reload/save?) dialogue
Repro: 75% - seems to be a bit of a timings thing going on, might need to complete the steps quite quickly?

1) Open your second room again
2) Open the creation code for the second room and this time type anything in
3) Close the room via its workspace tab
4) Open your second room again
5) Open the creation code for the second room and remove everything you added
6) Quickly close the room via its workspace tab (while the syntax error is still showing in the gutter)
7) Wait a few seconds (whilst now back on Workspace 1)
8) See that this triggers a project modified (reload/save?) dialogue
Repro: 100% (although it sometimes seems to require/speed it up if I click my mouse?)
TagsIDE, RoomEditor
2.x IDE Found In2.2.2.393
2.x Runtime Found In2.2.2.308
2.x IDE Verified In
2.x Runtime Verified In

Activities

Alexander Borup

2019-02-26 13:04

Developer   ~0063345

Doesn't reproduce for me

Dan

2019-02-26 16:31

Adminstrator   ~0063355

Last edited: 2019-02-26 16:32

View 2 revisions

Not sure it's really a Room Editor issue, more a saving flow issue. Regardless, have updated all the info above to be more accurate.

Have also removed the 2.2.2 requirement, as now we know what the issue really is it's panic over.



Alexander Borup

2019-04-09 11:35

Developer   ~0063598

The overarching issue here is that the file watcher takes the time that it notices a file being delete as the 'time of deletion' of that file... which may be anywhere within a (by default - users can change it) 2 second window. The file system tells the file watcher to ignore changes while it's making them (begin/end guards), but the file watcher ticks (by default) once every 2 seconds, coming back to that window. Because file deletion has no time stamp associated with it, it's the best it can do without communicating with the OS. So it should probably be communicating with the OS to fix this.