* fixed dir handle leaks for windows
authormattn <mattn>
Thu, 26 Jun 2008 15:19:48 +0000 (15:19 +0000)
committermattn <mattn>
Thu, 26 Jun 2008 15:19:48 +0000 (15:19 +0000)
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@284 8a3a26a2-13c4-0310-b231-cf6edde360e5

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;