summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/gtk/webkit/webkitwebframe.cpp
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2011-05-18 13:36:51 +0100
committerSteve Block <steveblock@google.com>2011-05-24 15:38:28 +0100
commit2fc2651226baac27029e38c9d6ef883fa32084db (patch)
treee396d4bf89dcce6ed02071be66212495b1df1dec /Source/WebKit/gtk/webkit/webkitwebframe.cpp
parentb3725cedeb43722b3b175aaeff70552e562d2c94 (diff)
downloadexternal_webkit-2fc2651226baac27029e38c9d6ef883fa32084db.zip
external_webkit-2fc2651226baac27029e38c9d6ef883fa32084db.tar.gz
external_webkit-2fc2651226baac27029e38c9d6ef883fa32084db.tar.bz2
Merge WebKit at r78450: Initial merge by git.
Change-Id: I6d3e5f1f868ec266a0aafdef66182ddc3f265dc1
Diffstat (limited to 'Source/WebKit/gtk/webkit/webkitwebframe.cpp')
-rw-r--r--Source/WebKit/gtk/webkit/webkitwebframe.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/Source/WebKit/gtk/webkit/webkitwebframe.cpp b/Source/WebKit/gtk/webkit/webkitwebframe.cpp
index d0ea875..fd90a6c 100644
--- a/Source/WebKit/gtk/webkit/webkitwebframe.cpp
+++ b/Source/WebKit/gtk/webkit/webkitwebframe.cpp
@@ -474,23 +474,24 @@ WebKitWebView* webkit_web_frame_get_web_view(WebKitWebFrame* frame)
*
* Returns the @frame's name
*
- * Return value: the name of @frame
+ * Return value: the name of @frame. This method will return NULL if
+ * the #WebKitWebFrame is invalid or an empty string if it is not backed
+ * by a live WebCore frame.
*/
G_CONST_RETURN gchar* webkit_web_frame_get_name(WebKitWebFrame* frame)
{
g_return_val_if_fail(WEBKIT_IS_WEB_FRAME(frame), 0);
-
- WebKitWebFramePrivate* priv = frame->priv;
-
- if (priv->name)
- return priv->name;
-
Frame* coreFrame = core(frame);
if (!coreFrame)
return "";
- String string = coreFrame->tree()->uniqueName();
- priv->name = g_strdup(string.utf8().data());
+ WebKitWebFramePrivate* priv = frame->priv;
+ CString frameName = coreFrame->tree()->uniqueName().string().utf8();
+ if (!g_strcmp0(frameName.data(), priv->name))
+ return priv->name;
+
+ g_free(priv->name);
+ priv->name = g_strdup(frameName.data());
return priv->name;
}
@@ -768,7 +769,7 @@ static void draw_page_callback(GtkPrintOperation* op, GtkPrintContext* context,
{
PrintContext* printContext = reinterpret_cast<PrintContext*>(user_data);
- if (page_nr >= printContext->pageCount())
+ if (page_nr >= static_cast<gint>(printContext->pageCount()))
return;
cairo_t* cr = gtk_print_context_get_cairo_context(context);