Author: peterw
Date: Fri Oct 26 03:27:44 2007
New Revision: 29892
URL: 
http://svn.reactos.org/svn/reactos?rev=29892&view=rev
Log:
- Make tee behave properly with regards to overwriting files.
Modified:
    trunk/tools/RosBE-Windows/Tools/tee.c
Modified: trunk/tools/RosBE-Windows/Tools/tee.c
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE-Windows/Tools/tee.c?re…
==============================================================================
--- trunk/tools/RosBE-Windows/Tools/tee.c (original)
+++ trunk/tools/RosBE-Windows/Tools/tee.c Fri Oct 26 03:27:44 2007
@@ -31,38 +31,25 @@
         return 0;
     }
-    FILE = fopen(argv[1], "r");
-    if (FILE)
+    FILE = fopen(argv[1], "w");
+    if (!FILE)
     {
-        fprintf(stderr, "%s: Error file \"%s\" already exists.\n",
argv[0], argv[1]);
-        if (fclose(FILE))
-        {
-            fprintf(stderr, "%s: Error closing file \"%s\"\n",
argv[0], argv[1]);
-        }
+        fprintf(stderr, "%s: Error cannot create/open file
\"%s\".\n", argv[0], argv[1]);
         return -1;
     }
-    else
+    while (!feof(stdin))
     {
-        FILE = fopen(argv[1], "w");
-        if (!FILE)
+        charbuff = fgetc(stdin);
+        if (!feof(stdin))
         {
-            fprintf(stderr, "%s: Error cannot create file \"%s\".\n",
argv[0], argv[1]);
-            return -1;
+            fputc(charbuff, stdout);
+            fputc(charbuff, FILE);
         }
-        while (!feof(stdin))
-        {
-            charbuff = fgetc(stdin);
-            if (!feof(stdin))
-            {
-                fputc(charbuff, stdout);
-                fputc(charbuff, FILE);
-            }
-        }
-        if (fclose(FILE))
-        {
-            fprintf(stderr, "%s: Error closing file \"%s\"\n",
argv[0], argv[1]);
-            return -1;
-        }
+    }
+    if (fclose(FILE))
+    {
+        fprintf(stderr, "%s: Error closing file \"%s\"\n", argv[0],
argv[1]);
+        return -1;
     }
     return 0;