[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
ddkilzer at apple.com
ddkilzer at apple.com
Wed Dec 22 14:59:46 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit caba64436f139b3190eb139d2bb0e89721fa77ab
Author: ddkilzer at apple.com <ddkilzer at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Oct 27 05:29:25 2010 +0000
Extract use of NSKeyedUnarchiver from WebArchiveDumpSupport.mm
Reviewed by Adam Roben.
Part 2 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
There is no equivalent to NSKeyedUnarchiver in CoreFoundation,
so extract it into a platform-specific source file.
* DumpRenderTree/mac/WebArchiveDumpSupport.h:
(unarchiveNSURLResponseFromResponseData): Added declaration.
* DumpRenderTree/mac/WebArchiveDumpSupport.mm:
(convertWebResourceResponseToDictionary): Extracted code to
unarchiveNSURLResponseFromResponseData() in
WebArchiveDumpSupportMac.mm. Updated logic to return early if
nil is returned from unarchiveNSURLResponseFromResponseData().
* DumpRenderTree/mac/WebArchiveDumpSupportMac.mm:
(unarchiveNSURLResponseFromResponseData): Added. Extracted
code from convertWebResourceResponseToDictionary() in
WebArchiveDumpSupport.mm.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70612 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 7c41875..594eca3 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,5 +1,28 @@
2010-10-26 David Kilzer <ddkilzer at apple.com>
+ Extract use of NSKeyedUnarchiver from WebArchiveDumpSupport.mm
+
+ Reviewed by Adam Roben.
+
+ Part 2 of 4: <http://webkit.org/b/48278> Convert DumpRenderTree webarchive code to CoreFoundation
+
+ There is no equivalent to NSKeyedUnarchiver in CoreFoundation,
+ so extract it into a platform-specific source file.
+
+ * DumpRenderTree/mac/WebArchiveDumpSupport.h:
+ (unarchiveNSURLResponseFromResponseData): Added declaration.
+ * DumpRenderTree/mac/WebArchiveDumpSupport.mm:
+ (convertWebResourceResponseToDictionary): Extracted code to
+ unarchiveNSURLResponseFromResponseData() in
+ WebArchiveDumpSupportMac.mm. Updated logic to return early if
+ nil is returned from unarchiveNSURLResponseFromResponseData().
+ * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm:
+ (unarchiveNSURLResponseFromResponseData): Added. Extracted
+ code from convertWebResourceResponseToDictionary() in
+ WebArchiveDumpSupport.mm.
+
+2010-10-26 David Kilzer <ddkilzer at apple.com>
+
Extract call to -[WebHTMLRepresentation supportedNonImageMIMETypes] from WebArchiveDumpSupport.mm
Reviewed by Adam Roben.
diff --git a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.h b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.h
index ab0b530..66cd369 100644
--- a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.h
+++ b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.h
@@ -28,7 +28,9 @@
#include <CoreFoundation/CoreFoundation.h>
+ at class NSData;
@class NSString;
+ at class NSURLResponse;
@class WebArchive;
NSString *serializeWebArchiveToXML(WebArchive *webArchive);
@@ -36,6 +38,7 @@ NSString *serializeWebArchiveToXML(WebArchive *webArchive);
#pragma mark -
#pragma mark Platform-specific methods
+NSURLResponse *unarchiveNSURLResponseFromResponseData(NSData *responseData);
CFArrayRef supportedNonImageMIMETypes();
#endif /* WebArchiveDumpSupport_h */
diff --git a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.mm b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.mm
index 8632fec..4cdcde2 100644
--- a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.mm
+++ b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupport.mm
@@ -92,15 +92,13 @@ static void normalizeWebResourceURL(NSMutableString *webResourceURL)
static void convertWebResourceResponseToDictionary(NSMutableDictionary *propertyList)
{
- NSURLResponse *response = nil;
NSData *responseData = [propertyList objectForKey:@"WebResourceResponse"]; // WebResourceResponseKey in WebResource.m
- if ([responseData isKindOfClass:[NSData class]]) {
- // Decode NSURLResponse
- NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:responseData];
- response = [unarchiver decodeObjectForKey:@"WebResourceResponse"]; // WebResourceResponseKey in WebResource.m
- [unarchiver finishDecoding];
- [unarchiver release];
- }
+ if (![responseData isKindOfClass:[NSData class]])
+ return;
+
+ NSURLResponse *response = unarchiveNSURLResponseFromResponseData(responseData);
+ if (!response)
+ return;
NSMutableDictionary *responseDictionary = [[NSMutableDictionary alloc] init];
diff --git a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupportMac.mm b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupportMac.mm
index c3949e6..e2e3521 100644
--- a/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupportMac.mm
+++ b/WebKitTools/DumpRenderTree/mac/WebArchiveDumpSupportMac.mm
@@ -25,7 +25,19 @@
#import "WebArchiveDumpSupport.h"
+#import <Foundation/Foundation.h>
#import <WebKit/WebHTMLRepresentation.h>
+#import <wtf/RetainPtr.h>
+
+NSURLResponse *unarchiveNSURLResponseFromResponseData(NSData *responseData)
+{
+ // Decode NSURLResponse
+ RetainPtr<NSKeyedUnarchiver> unarchiver(AdoptNS, [[NSKeyedUnarchiver alloc] initForReadingWithData:responseData]);
+ NSURLResponse *response = [unarchiver.get() decodeObjectForKey:@"WebResourceResponse"]; // WebResourceResponseKey in WebResource.m
+ [unarchiver.get() finishDecoding];
+
+ return response;
+}
CFArrayRef supportedNonImageMIMETypes()
{
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list