diff options
author | Christian Persch <chpe@src.gnome.org> | 2008-10-20 22:03:28 +0000 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2008-10-20 22:03:28 +0000 |
commit | 90ff11dccc9ec8649bfff0b0f6798d51d3b2eaf1 (patch) | |
tree | a65d6d7ae5ad5fe1b1211697e529e9c32d1d6f56 | |
parent | ff8775eab76b129234f23c0da035ad1aa6b6e854 (diff) | |
download | epiphany-RELEASE_2_24_1.tar.gz |
Try to fix crash on zoom change. Bug #525357, patch by Mike Hommey.RELEASE_2_24_1
svn path=/branches/gnome-2-24/; revision=8594
-rw-r--r-- | embed/mozilla/EphyBrowser.cpp | 13 | ||||
-rw-r--r-- | embed/mozilla/EphyBrowser.h | 1 |
2 files changed, 12 insertions, 2 deletions
diff --git a/embed/mozilla/EphyBrowser.cpp b/embed/mozilla/EphyBrowser.cpp index 3d9d8b443..8d94ad185 100644 --- a/embed/mozilla/EphyBrowser.cpp +++ b/embed/mozilla/EphyBrowser.cpp @@ -830,6 +830,7 @@ EphyBrowser::EphyBrowser () #endif , mContextMenuListener(nsnull) , mInitialized(PR_FALSE) +, mZoom(0.0) { LOG ("EphyBrowser ctor (%p)", this); } @@ -1192,7 +1193,9 @@ nsresult EphyBrowser::SetZoom (float aZoom) nsCOMPtr<nsIMarkupDocumentViewer> mdv = do_QueryInterface(contentViewer); NS_ENSURE_TRUE (mdv, NS_ERROR_FAILURE); - return mdv->SetTextZoom (aZoom); + nsresult rv = mdv->SetTextZoom (aZoom); + mZoom = aZoom; + return rv; } nsresult EphyBrowser::GetContentViewer (nsIContentViewer **aViewer) @@ -1207,6 +1210,10 @@ nsresult EphyBrowser::GetContentViewer (nsIContentViewer **aViewer) nsresult EphyBrowser::GetZoom (float *aZoom) { + if (mZoom != 0) { + *aZoom = mZoom; + return NS_OK; + } NS_ENSURE_TRUE (mWebBrowser, NS_ERROR_FAILURE); nsCOMPtr<nsIContentViewer> contentViewer; @@ -1216,7 +1223,9 @@ nsresult EphyBrowser::GetZoom (float *aZoom) nsCOMPtr<nsIMarkupDocumentViewer> mdv = do_QueryInterface(contentViewer); NS_ENSURE_TRUE (mdv, NS_ERROR_FAILURE); - return mdv->GetTextZoom (aZoom); + nsresult rv = mdv->GetTextZoom (aZoom); + mZoom = *aZoom; + return rv; } nsresult diff --git a/embed/mozilla/EphyBrowser.h b/embed/mozilla/EphyBrowser.h index ac0ef2ef6..83d51eb4e 100644 --- a/embed/mozilla/EphyBrowser.h +++ b/embed/mozilla/EphyBrowser.h @@ -208,6 +208,7 @@ public: nsCOMPtr<nsIWebBrowser> mWebBrowser; private: GtkWidget *mEmbed; + float mZoom; nsCOMPtr<nsIWebBrowserFocus> mWebBrowserFocus; nsCOMPtr<nsIDOMDocument> mTargetDocument; |