]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/missing.cpp
* fixed dir handle leaks for windows
[xonotic/netradiant.git] / radiant / missing.cpp
index 0245ec1e01758e215eb6ef6d6bc4a99f5502c434..f83bed3c3e1e0055b022c456d3af0165c0ffbaa6 100644 (file)
@@ -149,6 +149,7 @@ FindFiles::FindFiles( const char *_directory ) {
 FindFiles::~FindFiles() {
        if ( findHandle != NULL ) {
                closedir( findHandle );
+               findHandle = NULL;
        }
 }
 
@@ -173,8 +174,9 @@ FindFiles::FindFiles( const char *_directory ) {
 }
 
 FindFiles::~FindFiles() {
-       if ( findHandle != NULL ) {
+       if ( findHandle != INVALID_HANDLE_VALUE ) {
                FindClose( findHandle );
+               findHandle = INVALID_HANDLE_VALUE;
        }
 }
 
@@ -188,6 +190,7 @@ const char* FindFiles::NextFile() {
        }
        if ( FindNextFile( findHandle, &findFileData ) == 0 ) {
                FindClose( findHandle );
+               findHandle = INVALID_HANDLE_VALUE;
                return NULL;
        }
        return findFileData.cFileName;