[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
cblu
cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:35:20 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 7c1004a37fd96bb44aa91e8225640b90b17d3865
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Apr 8 19:15:35 2003 +0000
Fixed: 3220463 - REGRESSION: PDF viewer plug-in does not display (worked in 69 and previous)
Reviewed by darin.
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView didStart]): always call redeliverStream. Have WebNetscapePluginRepresentation determine if it actually needs to do that.
* Plugins.subproj/WebNetscapePluginRepresentation.h:
* Plugins.subproj/WebNetscapePluginRepresentation.m:
(-[WebNetscapePluginRepresentation receivedData:withDataSource:]): keep track of _dataLengthReceived which is independent of the data received by the data source
(-[WebNetscapePluginRepresentation redeliverStream]): only redeliver the stream if _dataLengthReceived is greater than 0
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4045 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index c1eb5aa..3b78d54 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,16 @@
+2003-04-08 Chris Blumenberg <cblu at apple.com>
+
+ Fixed: 3220463 - REGRESSION: PDF viewer plug-in does not display (worked in 69 and previous)
+
+ Reviewed by darin.
+
+ * Plugins.subproj/WebNetscapePluginDocumentView.m:
+ (-[WebNetscapePluginDocumentView didStart]): always call redeliverStream. Have WebNetscapePluginRepresentation determine if it actually needs to do that.
+ * Plugins.subproj/WebNetscapePluginRepresentation.h:
+ * Plugins.subproj/WebNetscapePluginRepresentation.m:
+ (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): keep track of _dataLengthReceived which is independent of the data received by the data source
+ (-[WebNetscapePluginRepresentation redeliverStream]): only redeliver the stream if _dataLengthReceived is greater than 0
+
2003-04-07 Chris Blumenberg <cblu at apple.com>
Fixed: 3206018 - REGRESSION: Clicks on the BBC news ticker applet don't open story in new window
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m
index fefc18d..9cfeea2 100644
--- a/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m
+++ b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m
@@ -54,12 +54,11 @@
- (void)didStart
{
- if ([[dataSource data] length] > 0) {
- // Plug-in started after data was received. Redeliver what was already received.
- WebNetscapePluginRepresentation *representation = (WebNetscapePluginRepresentation *)[dataSource representation];
- ASSERT([representation isKindOfClass:[WebNetscapePluginRepresentation class]]);
- [representation redeliverStream];
- }
+ // Deliver what has not been passed to the plug-in up to this point.
+ // Do this in case the plug-in was started after the load started.
+ WebNetscapePluginRepresentation *representation = (WebNetscapePluginRepresentation *)[dataSource representation];
+ ASSERT([representation isKindOfClass:[WebNetscapePluginRepresentation class]]);
+ [representation redeliverStream];
}
- (WebDataSource *)dataSource
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.h b/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.h
index 83f9056..3e5cae5 100644
--- a/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.h
+++ b/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.h
@@ -13,6 +13,7 @@
@interface WebNetscapePluginRepresentation : WebBaseNetscapePluginStream <WebDocumentRepresentation>
{
+ unsigned _dataLengthReceived;
WebDataSource *_dataSource;
WebError *_error;
}
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.m b/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.m
index 16ad63d..a4fbf45 100644
--- a/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.m
+++ b/WebKit/Plugins.subproj/WebNetscapePluginRepresentation.m
@@ -37,6 +37,8 @@
- (void)receivedData:(NSData *)data withDataSource:(WebDataSource *)ds
{
+ _dataLengthReceived += [data length];
+
WebNetscapePluginDocumentView *view = (WebNetscapePluginDocumentView *)[[[_dataSource webFrame] frameView] documentView];
ASSERT([view isKindOfClass:[WebNetscapePluginDocumentView class]]);
@@ -90,9 +92,11 @@
- (void)redeliverStream
{
if (_dataSource && [self isPluginViewStarted]) {
- instance = NULL;
- NSData *data = [_dataSource data];
- if ([data length] > 0) {
+ // Deliver what has not been passed to the plug-in up to this point.
+ if (_dataLengthReceived > 0) {
+ NSData *data = [[_dataSource data] subdataWithRange:NSMakeRange(0, _dataLengthReceived)];
+ instance = NULL;
+ _dataLengthReceived = 0;
[self receivedData:data withDataSource:_dataSource];
if (![_dataSource isLoading]) {
if (_error) {
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list