Author: espectador
Date: Sun Mar  9 05:15:35 2014
New Revision: 37736

URL: http://svn.gna.org/viewcvs/gnustep?rev=37736&view=rev
Log:
Improve to work on Windows.

Modified:
    apps/projectcenter/trunk/ChangeLog
    apps/projectcenter/trunk/Framework/PCFileManager.m

Modified: apps/projectcenter/trunk/ChangeLog
URL: 
http://svn.gna.org/viewcvs/gnustep/apps/projectcenter/trunk/ChangeLog?rev=37736&r1=37735&r2=37736&view=diff
==============================================================================
--- apps/projectcenter/trunk/ChangeLog  (original)
+++ apps/projectcenter/trunk/ChangeLog  Sun Mar  9 05:15:35 2014
@@ -1,3 +1,8 @@
+2014-03-08 German Arias <[email protected]>
+
+       * Framework/PCFileManager.m (-isTextFile:): Rewrite this method to work
+       on Windows.
+
 2014-03-07 German Arias <[email protected]>
 
        * Framework/PCProjectManager.m: Remove the extension returned by native

Modified: apps/projectcenter/trunk/Framework/PCFileManager.m
URL: 
http://svn.gna.org/viewcvs/gnustep/apps/projectcenter/trunk/Framework/PCFileManager.m?rev=37736&r1=37735&r2=37736&view=diff
==============================================================================
--- apps/projectcenter/trunk/Framework/PCFileManager.m  (original)
+++ apps/projectcenter/trunk/Framework/PCFileManager.m  Sun Mar  9 05:15:35 2014
@@ -644,9 +644,11 @@
 {
   NSFileHandle *fh;
   NSData       *data;
-  unsigned int i, n;
-  const char   *buf;
-  unsigned int printable;
+  NSUInteger i, printable = 0;
+  NSString *content;
+  NSCharacterSet *alpha = [NSCharacterSet alphanumericCharacterSet];
+  NSCharacterSet *spaces = [NSCharacterSet whitespaceAndNewlineCharacterSet];
+  NSCharacterSet *marks = [NSCharacterSet punctuationCharacterSet];
 
   fh = [NSFileHandle fileHandleForReadingAtPath:filename];
   if (fh == nil)
@@ -660,16 +662,18 @@
       return YES;
     }
 
-  buf = [data bytes];
-  for (i = printable = 0, n = [data length]; i < n; i++)
-    {
-      if (isprint((int)(unsigned char)buf[i]) || isspace((int)(unsigned 
char)buf[i]))
+  content = [NSString stringWithContentsOfFile: filename];
+  for (i = 0; i < [content length]; i++)
+    {
+      if ([alpha characterIsMember: [content characterAtIndex: i]] ||
+         [spaces characterIsMember: [content characterAtIndex: i]] ||
+         [marks characterIsMember: [content characterAtIndex: i]])
        {
          printable++;
        }
     }
 
-  return (((double) printable / n) > 0.9);
+  return (((double) printable / i) > 0.9);
 }
 
 - (NSArray *)filesWithExtension:(NSString *)extension


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to