Put FindClose onto the correct position.
Modified: trunk/reactos/subsys/system/cmd/del.c

Modified: trunk/reactos/subsys/system/cmd/del.c
--- trunk/reactos/subsys/system/cmd/del.c	2005-07-30 16:53:09 UTC (rev 16895)
+++ trunk/reactos/subsys/system/cmd/del.c	2005-07-30 18:32:18 UTC (rev 16896)
@@ -385,7 +385,7 @@
 	for (i = 0; i < args; i++)
 	{
 
-      /*this checks to see if it isnt a flag, if it isnt, we assume it is a file name*/
+                /*this checks to see if it isnt a flag, if it isnt, we assume it is a file name*/
 		if((*arg[i] == _T('/')) || (*arg[i] == _T('-')))
 			continue;
 		bSubFileFound = FALSE;
@@ -454,175 +454,175 @@
 			}
 
 		
-		if(_tcschr (AltArg, _T('*')) == NULL && 
-			IsExistingDirectory (AltArg))
-		{
-		/* If it doesnt have a \ at the end already then on needs to be added */
-		if(AltArg[_tcslen(AltArg) -  1] != _T('\\'))
-			_tcscat (AltArg, _T("\\"));
-		/* Add a wildcard after the \ */
-		_tcscat (AltArg, _T("*"));
-		}
+		        if(_tcschr (AltArg, _T('*')) == NULL && 
+			        IsExistingDirectory (AltArg))
+		        {
+		                /* If it doesnt have a \ at the end already then on needs to be added */
+		                if(AltArg[_tcslen(AltArg) -  1] != _T('\\'))
+			                _tcscat (AltArg, _T("\\"));
+		                /* Add a wildcard after the \ */
+		                _tcscat (AltArg, _T("*"));
+		        }
 
-		if(!_tcscmp (AltArg, _T("*")) ||
-			!_tcscmp (AltArg, _T("*.*"))||
-			(AltArg[_tcslen(AltArg) -  2] == _T('\\') && AltArg[_tcslen(AltArg) -  1] == _T('*')))
-		{
-			/*well, the user wants to delete everything but if they didnt yes DEL_YES, DEL_QUIET, or DEL_PROMPT
-			then we are going to want to make sure that in fact they want to do that.  */
+		        if(!_tcscmp (AltArg, _T("*")) ||
+			        !_tcscmp (AltArg, _T("*.*"))||
+			        (AltArg[_tcslen(AltArg) -  2] == _T('\\') && AltArg[_tcslen(AltArg) -  1] == _T('*')))
+		        {
+			        /*well, the user wants to delete everything but if they didnt yes DEL_YES, DEL_QUIET, or DEL_PROMPT
+			        then we are going to want to make sure that in fact they want to do that.  */
 
-			if (!((dwFlags & DEL_YES) || (dwFlags & DEL_QUIET) || (dwFlags & DEL_PROMPT)))
-			{
-				LoadString( CMD_ModuleHandle, STRING_DEL_HELP2, szMsg, RC_STRING_MAX_SIZE);
+			        if (!((dwFlags & DEL_YES) || (dwFlags & DEL_QUIET) || (dwFlags & DEL_PROMPT)))
+			        {
+				        LoadString( CMD_ModuleHandle, STRING_DEL_HELP2, szMsg, RC_STRING_MAX_SIZE);
 
-				res = FilePromptYNA (szMsg);
-				if ((res == PROMPT_NO) || (res == PROMPT_BREAK))
-					break;
-				if(res == PROMPT_ALL)
-					dwFlags |= DEL_YES;
-			}
-		}
+				        res = FilePromptYNA (szMsg);
+				        if ((res == PROMPT_NO) || (res == PROMPT_BREAK))
+					        break;
+				        if(res == PROMPT_ALL)
+					        dwFlags |= DEL_YES;
+			        }
+		        }
 
 
 
 #ifdef _DEBUG
-		ConErrPrintf (_T("File: %s\n"), arg[i]);
+		        ConErrPrintf (_T("File: %s\n"), arg[i]);
 #endif
 
 #ifdef _DEBUG
-		ConErrPrintf(_T("Wildcards!\n\n"));
+		        ConErrPrintf(_T("Wildcards!\n\n"));
 #endif
 		
-		GetFullPathName (AltArg,
-			MAX_PATH,
-			szFullPath,
-			&pFilePart);
+		        GetFullPathName (AltArg,
+			                MAX_PATH,
+			                szFullPath,
+			                &pFilePart);
 
 #ifdef _DEBUG
-		ConErrPrintf(_T("Full path: %s\n"), szFullPath);
-		ConErrPrintf(_T("File part: %s\n"), pFilePart);
+		        ConErrPrintf(_T("Full path: %s\n"), szFullPath);
+		        ConErrPrintf(_T("File part: %s\n"), pFilePart);
 #endif
 
-		hFile = FindFirstFile (szFullPath, &f);
+		        hFile = FindFirstFile (szFullPath, &f);
 		
-		do
-		{
+		        do
+		        {
 
 
-			if (hFile == INVALID_HANDLE_VALUE)
-			{
-				error_file_not_found ();
-				freep (arg);
-				return 0;
-			}
+			        if (hFile == INVALID_HANDLE_VALUE)
+			        {
+				        error_file_not_found ();
+				        freep (arg);
+				        return 0;
+			        }
 
-			/*bExclusion is the check varible to see if it has a match
-			and it needs to be set to false before each loop, as it hasnt been matched yet*/						
-			bExclusion = 0;
+			        /*bExclusion is the check varible to see if it has a match
+			        and it needs to be set to false before each loop, as it hasnt been matched yet*/						
+			        bExclusion = 0;
 			
-			/*loop through each of the arguments*/
-			for (ii = 0; ii < args; ii++)
-			{
-				/*check to see if it is a exclusion tag but not a ':' (used in ATTR)*/
-				if(_tcschr (arg[ii], _T('-')) && _tcschr (arg[ii], _T(':')) == NULL)
-				{
-					/*remove the - from the front to get the real name*/
-					_tcscpy (exfileName , arg[ii]);								
-					szFileName = strtok (exfileName,"-");								
-					GetFullPathName (szFileName,
-						MAX_PATH,
-						szFullPath,
-						&pFilePart);
-					hFileExcl = FindFirstFile (szFullPath, &f2);								
-					do
-					{
-						/*check to see if the filenames match*/
-						if(!_tcscmp (f.cFileName, f2.cFileName))
-							bExclusion = 1;	
-					}
-					while (FindNextFile (hFileExcl, &f2));
-				}
-			}
+			        /*loop through each of the arguments*/
+			        for (ii = 0; ii < args; ii++)
+			        {
+				        /*check to see if it is a exclusion tag but not a ':' (used in ATTR)*/
+				        if(_tcschr (arg[ii], _T('-')) && _tcschr (arg[ii], _T(':')) == NULL)
+				        {
+					        /*remove the - from the front to get the real name*/
+					        _tcscpy (exfileName , arg[ii]);								
+					        szFileName = _tcstok (exfileName,_T("-"));								
+					        GetFullPathName (szFileName,
+						        MAX_PATH,
+						        szFullPath,
+						        &pFilePart);
+					        hFileExcl = FindFirstFile (szFullPath, &f2);								
+					        do
+					        {
+						        /*check to see if the filenames match*/
+						        if(!_tcscmp (f.cFileName, f2.cFileName))
+							        bExclusion = 1;	
+					        }
+					        while (FindNextFile (hFileExcl, &f2));
+				        }
+			        }
 			
-			/*if it is going to be excluded by - no need to check attrs*/
-			if(dwFlags & DEL_ATTRIBUTES && bExclusion == 0)
-			{
+			        /*if it is going to be excluded by - no need to check attrs*/
+			        if(dwFlags & DEL_ATTRIBUTES && bExclusion == 0)
+			        {
 
-				/*save if file attr check if user doesnt care about that attr anyways*/
-				if(dwAttrFlags & ATTR_ARCHIVE && !(f.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_HIDDEN && !(f.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_SYSTEM && !(f.dwFileAttributes & FILE_ATTRIBUTE_SYSTEM))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_READ_ONLY && !(f.dwFileAttributes & FILE_ATTRIBUTE_READONLY))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_N_ARCHIVE && (f.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_N_HIDDEN && (f.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_N_SYSTEM && (f.dwFileAttributes & FILE_ATTRIBUTE_SYSTEM))
-					bExclusion = 1;
-				if(dwAttrFlags & ATTR_N_READ_ONLY && (f.dwFileAttributes & FILE_ATTRIBUTE_READONLY))
-					bExclusion = 1;
-			}
+				        /*save if file attr check if user doesnt care about that attr anyways*/
+				        if(dwAttrFlags & ATTR_ARCHIVE && !(f.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_HIDDEN && !(f.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_SYSTEM && !(f.dwFileAttributes & FILE_ATTRIBUTE_SYSTEM))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_READ_ONLY && !(f.dwFileAttributes & FILE_ATTRIBUTE_READONLY))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_N_ARCHIVE && (f.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_N_HIDDEN && (f.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_N_SYSTEM && (f.dwFileAttributes & FILE_ATTRIBUTE_SYSTEM))
+					        bExclusion = 1;
+				        if(dwAttrFlags & ATTR_N_READ_ONLY && (f.dwFileAttributes & FILE_ATTRIBUTE_READONLY))
+					        bExclusion = 1;
+			        }
 
-			if(bExclusion)
-				continue;
+			        if(bExclusion)
+				        continue;
 
-			/* ignore ".", ".." and directories */
-			if (!_tcscmp (f.cFileName, _T(".")) ||
-				!_tcscmp (f.cFileName, _T("..")) ||
-				f.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
-				continue;
+			        /* ignore ".", ".." and directories */
+			        if (!_tcscmp (f.cFileName, _T(".")) ||
+				        !_tcscmp (f.cFileName, _T("..")) ||
+				        f.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
+				        continue;
 
-			_tcscpy (pFilePart, f.cFileName);
+			        _tcscpy (pFilePart, f.cFileName);
 
 #ifdef _DEBUG
-			ConErrPrintf(_T("Full filename: %s\n"), szFullPath);
+			        ConErrPrintf(_T("Full filename: %s\n"), szFullPath);
 #endif
 
-			/* ask for deleting */
-			if (dwFlags & DEL_PROMPT)
-			{
-				LoadString(CMD_ModuleHandle, STRING_DEL_ERROR5, szMsg, RC_STRING_MAX_SIZE);
-				ConErrPrintf(szMsg, szFullPath);
+			        /* ask for deleting */
+			        if (dwFlags & DEL_PROMPT)
+			        {
+				        LoadString(CMD_ModuleHandle, STRING_DEL_ERROR5, szMsg, RC_STRING_MAX_SIZE);
+				        ConErrPrintf(szMsg, szFullPath);
 
-				LoadString(CMD_ModuleHandle, STRING_DEL_ERROR6, szMsg, RC_STRING_MAX_SIZE);
-				res = FilePromptYN (szMsg);
+				        LoadString(CMD_ModuleHandle, STRING_DEL_ERROR6, szMsg, RC_STRING_MAX_SIZE);
+				        res = FilePromptYN (szMsg);
 
-				if ((res == PROMPT_NO) || (res == PROMPT_BREAK))
-				{
-					continue;  //FIXME: Errorcode?
-				}
-			}
+				        if ((res == PROMPT_NO) || (res == PROMPT_BREAK))
+				        {
+					        continue;  //FIXME: Errorcode?
+				        }
+			        }
 
-			/*user cant ask it to be quiet and tell you what it did*/
-			if (!(dwFlags & DEL_QUIET) && !(dwFlags & DEL_TOTAL))
-			{
-				LoadString(CMD_ModuleHandle, STRING_DEL_ERROR7, szMsg, RC_STRING_MAX_SIZE);
-				ConErrPrintf(szMsg, szFullPath);
-			}
+			        /*user cant ask it to be quiet and tell you what it did*/
+			        if (!(dwFlags & DEL_QUIET) && !(dwFlags & DEL_TOTAL))
+			        {
+				        LoadString(CMD_ModuleHandle, STRING_DEL_ERROR7, szMsg, RC_STRING_MAX_SIZE);
+				        ConErrPrintf(szMsg, szFullPath);
+			        }
 
-			/* delete the file */
-			if(dwFlags & DEL_NOTHING)
-				continue;
+			        /* delete the file */
+			        if(dwFlags & DEL_NOTHING)
+				        continue;
 
 
-			if(RemoveFile (szFullPath, dwFlags))
-				dwFiles++;
-			else
-			{
-				bSubFileFound = FALSE;
-				ErrorMessage (GetLastError(), _T(""));
-				break;
-			}
+			        if(RemoveFile (szFullPath, dwFlags))
+				        dwFiles++;
+			        else
+			        {
+				        bSubFileFound = FALSE;
+				        ErrorMessage (GetLastError(), _T(""));
+				        break;
+			        }
+		        }
+		        while (FindNextFile (hFile, &f));
+	                FindClose (hFile);
 		}
-		while (FindNextFile (hFile, &f));
-		}
 		while(bSubFileFound);
 	}
-	FindClose (hFile);
 	
 	freep (arg);