It crashes randomly with write problems. Always requires a manual dart trigger.
This is very tedious.
Description
Related Objects
- Mentioned In
- T2273: Check if all fopen calls are followed by fclose
- Mentioned Here
- T2183: Create scene serialization prototype
Event Timeline
Ok, the test was a little stupid. However it's a serious problem if this class cannot get a temporary directory from the operating system. This problem may be in Poco or Windows or SceneIO. Will be investigated with T2183.
For now the solution is to delete temp directories after zipping to reduce overall number of temp directories on Windows XP (#18125)
Ok, the error was a little difficult to locate:
SceneIO was unable to delete a temporary directory that is created to hold the contents of the .zip file that should be created.
Jochen and I found that Poco was held from deleting the directory because something still held a file handle to the test image pic3d.pic.gz inside the temp directory. When this is the case (at least) Windows cannot remove the directory.
The original reason was a change in revision 15719, where a test was added that should detect cases where a .pic file cannot be written. The test that was added in 15719 opened a file handle using C 'fopen' but never closed this handle.
We changed PicFileWriter to use C++ means of file handling and correctly close the test handle now.
Changes comitted in revision 18165.
Added tests to detect when a temp directory cannot be removed in revision 18166. Leaving this bug open until it is clear whether this fixes the test behaviour on all platforms.
Forgot this long enough. No dartclients fail anymore, test seems to behave fine. Closing this bug as fixed.
Testing bugs are part of their respective modules -> changing component to other, please assign appropriate component.