[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

darin darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:15:27 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 71025ac38fa0136e1a34c754b95083d2b99b809a
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Dec 16 08:36:59 2002 +0000

            Reviewed by Maciej.
    
    	- fixed 3128858 -- Supply Finder bits for decoded BinHex files
    
            * Downloads.subproj/WebBinHexDecoder.h: Add a _finderFlags field.
            * Downloads.subproj/WebBinHexDecoder.m:
            (-[WebBinHexDecoder decodeHeader]): Decode Finder flags.
            (-[WebBinHexDecoder fileAttributes]): Put Finder flags in dictionary.
    
            * Downloads.subproj/WebMacBinaryDecoder.m: Tweaked things for no good reason.
    	(It is good to always import your own header first as a check that it's self-sufficient).
    
            * WebKit.pbproj/project.pbxproj: Let Electron wipe the slate clean of pre-Electron iniquity.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index c9be68d..8606bc0 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,19 @@
+2002-12-16  Darin Adler  <darin at apple.com>
+
+        Reviewed by Maciej.
+
+	- fixed 3128858 -- Supply Finder bits for decoded BinHex files
+
+        * Downloads.subproj/WebBinHexDecoder.h: Add a _finderFlags field.
+        * Downloads.subproj/WebBinHexDecoder.m:
+        (-[WebBinHexDecoder decodeHeader]): Decode Finder flags.
+        (-[WebBinHexDecoder fileAttributes]): Put Finder flags in dictionary.
+
+        * Downloads.subproj/WebMacBinaryDecoder.m: Tweaked things for no good reason.
+	(It is good to always import your own header first as a check that it's self-sufficient).
+
+        * WebKit.pbproj/project.pbxproj: Let Electron wipe the slate clean of pre-Electron iniquity.
+
 2002-12-15  Chris Blumenberg  <cblu at apple.com>
 	
 	Fixed: 3094928 - Apply Finder bits to decoded downloads
diff --git a/WebKit/Downloads.subproj/WebBinHexDecoder.h b/WebKit/Downloads.subproj/WebBinHexDecoder.h
index 72b6a0d..86933c2 100644
--- a/WebKit/Downloads.subproj/WebBinHexDecoder.h
+++ b/WebKit/Downloads.subproj/WebBinHexDecoder.h
@@ -36,6 +36,7 @@
     unsigned char _name[64];
     OSType _fileType;
     OSType _fileCreator;
+    uint32_t _finderFlags;
     int _dataForkLengthRemaining;
     int _resourceForkLengthRemaining;
     
diff --git a/WebKit/Downloads.subproj/WebBinHexDecoder.m b/WebKit/Downloads.subproj/WebBinHexDecoder.m
index 6be3d5c..c1a01f6 100644
--- a/WebKit/Downloads.subproj/WebBinHexDecoder.m
+++ b/WebKit/Downloads.subproj/WebBinHexDecoder.m
@@ -12,6 +12,7 @@
 #import "WebBinHexDecoder.h"
 
 #import <WebFoundation/WebAssertions.h>
+#import <WebFoundation/WebNSFileManagerExtras.h>
 
 #define SKIP_CHARACTER 0x40
 #define END_CHARACTER 0x41
@@ -251,9 +252,14 @@ done:
     memcpy(_name, header.name, header.name[0] + 1);
     _fileType = (((((header.remainder[1] << 8) | header.remainder[2]) << 8) | header.remainder[3]) << 8) | header.remainder[4];
     _fileCreator = (((((header.remainder[5] << 8) | header.remainder[6]) << 8) | header.remainder[7]) << 8) | header.remainder[8];
+    _finderFlags = (header.remainder[9] << 8) | header.remainder[10];
     _dataForkLengthRemaining = (((((header.remainder[11] << 8) | header.remainder[12]) << 8) | header.remainder[13]) << 8) | header.remainder[14];
     _resourceForkLengthRemaining = (((((header.remainder[15] << 8) | header.remainder[16]) << 8) | header.remainder[17]) << 8) | header.remainder[18];
     
+    // Mask off to the only fields in BinHex that we want to respect.
+    // Most flags just aren't supported in BinHex files even though there's a 16-bit field.
+    _finderFlags &= kHasBundle | kIsStationery;
+    
     // Reset the CRC so it's ready to compute a fork CRC.
     _CRC = 0;
 }
@@ -357,6 +363,7 @@ done:
     return [NSDictionary dictionaryWithObjectsAndKeys:
         [NSNumber numberWithUnsignedLong:_fileType], NSFileHFSTypeCode,
         [NSNumber numberWithUnsignedLong:_fileCreator], NSFileHFSCreatorCode,
+        [NSNumber numberWithUnsignedShort:_finderFlags], WebFinderInfo,
         nil];
 }
 
diff --git a/WebKit/Downloads.subproj/WebMacBinaryDecoder.h b/WebKit/Downloads.subproj/WebMacBinaryDecoder.h
index 57ba542..4cf9193 100644
--- a/WebKit/Downloads.subproj/WebMacBinaryDecoder.h
+++ b/WebKit/Downloads.subproj/WebMacBinaryDecoder.h
@@ -17,8 +17,8 @@
     
     int _dataForkLength;
     int _resourceForkLength;
-    u_int16_t _finderInfo;
-    u_int16_t _extendedFinderInfo;
+    u_int16_t _finderFlags;
+    u_int16_t _extendedFinderFlags;
     u_int32_t _creationDate;
     u_int32_t _modificationDate;
     OSType _fileType;
diff --git a/WebKit/Downloads.subproj/WebMacBinaryDecoder.m b/WebKit/Downloads.subproj/WebMacBinaryDecoder.m
index dd9c3a0..06f8f88 100644
--- a/WebKit/Downloads.subproj/WebMacBinaryDecoder.m
+++ b/WebKit/Downloads.subproj/WebMacBinaryDecoder.m
@@ -7,12 +7,13 @@
 // This decoder decodes MacBinary II and might also work for MacBinary III.
 // There's also MacBinary I, which we do not attempt to support.
 
-#import <WebKit/WebDownloadDecoder.h>
 #import <WebKit/WebMacBinaryDecoder.h>
 
 #import <WebFoundation/WebAssertions.h>
 #import <WebFoundation/WebNSFileManagerExtras.h>
 
+#import <WebKit/WebDownloadDecoder.h>
+
 #import "crc16.h"
 
 #define HEADER_SIZE 128
@@ -97,12 +98,12 @@
         _resourceForkLength = (((((header[87] << 8) | header[88]) << 8) | header[89]) << 8) | header[90];
         _creationDate = (((((header[91] << 8) | header[92]) << 8) | header[93]) << 8) | header[94];
         _modificationDate = (((((header[95] << 8) | header[96]) << 8) | header[97]) << 8) | header[98];
-        _finderInfo = ((header[73] << 8) | header[101]);
-        _extendedFinderInfo = header[107];
+        _finderFlags = (header[73] << 8) | header[101];
+        _extendedFinderFlags = header[107];
 
         // Clear reserved bits or bits not applicable after transfer as defined in Finder.h.
-        _finderInfo &= kColor | kIsShared | kHasCustomIcon | kIsStationery | kHasBundle | kIsAlias;
-        _extendedFinderInfo &= kExtendedFlagHasCustomBadge | kExtendedFlagHasRoutingInfo;
+        _finderFlags &= kColor | kIsShared | kHasCustomIcon | kIsStationery | kHasBundle | kIsAlias;
+        _extendedFinderFlags &= kExtendedFlagHasCustomBadge | kExtendedFlagHasRoutingInfo;
         
         // MacBinary III.
         if (header[102] == 'm' && header[103] == 'B' && header[104] == 'I' && header[105] == 'N') {
@@ -153,14 +154,13 @@
 {
     ASSERT(_offset >= HEADER_SIZE);
     
-    // FIXME: What about other parts of Finder info? Bundle bit, for example.
     return [NSDictionary dictionaryWithObjectsAndKeys:
         [NSDate dateWithTimeIntervalSinceReferenceDate:kCFAbsoluteTimeIntervalSince1904 + _creationDate], NSFileCreationDate,
         [NSDate dateWithTimeIntervalSinceReferenceDate:kCFAbsoluteTimeIntervalSince1904 + _modificationDate], NSFileModificationDate,
         [NSNumber numberWithUnsignedLong:_fileType], NSFileHFSTypeCode,
         [NSNumber numberWithUnsignedLong:_fileCreator], NSFileHFSCreatorCode,
-        [NSNumber numberWithUnsignedShort:_finderInfo], WebFinderInfo,
-        [NSNumber numberWithUnsignedShort:_extendedFinderInfo], WebExtendedFinderInfo,
+        [NSNumber numberWithUnsignedShort:_finderFlags], WebFinderInfo,
+        [NSNumber numberWithUnsignedShort:_extendedFinderFlags], WebExtendedFinderInfo,
         nil];
 }
 
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index e85a995..19ac686 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -185,7 +185,6 @@
 </dict>
 </plist>
 ";
-			shouldUseHeadermap = 0;
 		};
 		0867D69DFE84028FC02AAC07 = {
 			buildActionMask = 2147483647;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list