[haiku-webkit-commits] r303 - in webkit/trunk: WebCore WebCore/platform WebCore/platform/haiku WebKit WebKit/haiku/API WebKit/haiku/WebCoreSupport WebKit/haiku/WebPositive WebKit/haiku/WebPositive/support

  • From: webkit@xxxxxxxxxxxxxxx
  • To: haiku-webkit-commits@xxxxxxxxxxxxx
  • Date: Tue, 09 Mar 2010 11:49:35 +0000

Author: stippi
Date: Tue Mar  9 11:49:34 2010
New Revision: 303
URL: http://mmlr.dyndns.org/changeset/303

Log:
* Added a class CookieJarClient to WebCore's CookieJar.h which provides the
   same functionality as the global methods for managing cookies. This is only
   enabled for the Haiku platform. Since the global cookie methods get a 
Document
   pointer, I envision, the CookieJarClient could eventually be a member of
   Document instances. It would then be passed upon WebCore::Page creation.
   Still waiting on feedback from other WebKit developers on this one. This 
change
   is more elegant than what the Qt port does, which is to use WebKit classes in
   WebCore (layering violation). Right now, a single global instance of a
   CookieJarClient can be assigned.
 * Implemented CookieJarClientHaiku which uses a BNetworkCookieJar to forward
   the requests. Eventually, the behaviour could be browser specific.
 * Added all the necessary wiring to BrowserApplication to make the cookie jar
   persistent.
 * TODO: Actually parse cookies and handle at least the expiration date, but
   other stuff like matching the domain of the cookie and the URL and 
"HTTP-only"
   cookies seems important as well.

Even though I have confirmed that cookies are stored and restored correctly,
and also retrieved via the global cookie methods, I can see no change in browser
behaviour. For example enabling "Stay signed in" on googlemail.com does not work
in WebPositive, although BeZillaBrowser automatically logs in in a new session
when surfing to googlemail.com. No idea if this is even implemented with
cookies, although it seems like it should be.

Added:
   webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.cpp
   webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.h
Modified:
   webkit/trunk/WebCore/Jamfile
   webkit/trunk/WebCore/platform/CookieJar.h
   webkit/trunk/WebCore/platform/haiku/CookieJarHaiku.cpp
   webkit/trunk/WebKit/Jamfile
   webkit/trunk/WebKit/haiku/API/WebPage.cpp
   webkit/trunk/WebKit/haiku/API/WebPage.h
   webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.cpp
   webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.h
   webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp
   webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.cpp
   webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.h

Modified: webkit/trunk/WebCore/Jamfile
==============================================================================
--- webkit/trunk/WebCore/Jamfile        Tue Mar  9 09:26:44 2010        (r302)
+++ webkit/trunk/WebCore/Jamfile        Tue Mar  9 11:49:34 2010        (r303)
@@ -42,6 +42,11 @@
 SubDirHdrs $(TOP) WebCore svg animation ;
 SubDirHdrs $(TOP) WebCore svg graphics ;
 
+# Needed for persistent cookie jar implementation. Actually
+# a layering violation. Maybe there ought to be a CookieJarClient interface.
+SubDirHdrs $(TOP) WebKit haiku API ;
+SubDirHdrs $(TOP) WebKit haiku WebCoreSupport ;
+
 # Define the source directories. Any headers included with quotes should be in
 # the following directories.
 local sourceDirs =

Modified: webkit/trunk/WebCore/platform/CookieJar.h
==============================================================================
--- webkit/trunk/WebCore/platform/CookieJar.h   Tue Mar  9 09:26:44 2010        
(r302)
+++ webkit/trunk/WebCore/platform/CookieJar.h   Tue Mar  9 11:49:34 2010        
(r303)
@@ -26,24 +26,40 @@
 #ifndef CookieJar_h
 #define CookieJar_h
 
+#include <wtf/Platform.h>
 #include <wtf/Vector.h>
 
 namespace WebCore {
 
-    class Document;
-    class KURL;
-    class String;
-
-    struct Cookie;
-
-    // cookies omits HttpOnly cookies.
-    String cookies(const Document*, const KURL&);
-    String cookieRequestHeaderFieldValue(const Document*, const KURL&);
-    void setCookies(Document*, const KURL&, const String&);
-    bool cookiesEnabled(const Document*);
-    bool getRawCookies(const Document*, const KURL&, Vector<Cookie>&);
-    void deleteCookie(const Document*, const KURL&, const String&);
+class Document;
+class KURL;
+class String;
+
+struct Cookie;
+
+// cookies omits HttpOnly cookies.
+String cookies(const Document*, const KURL&);
+String cookieRequestHeaderFieldValue(const Document*, const KURL&);
+void setCookies(Document*, const KURL&, const String&);
+bool cookiesEnabled(const Document*);
+bool getRawCookies(const Document*, const KURL&, Vector<Cookie>&);
+void deleteCookie(const Document*, const KURL&, const String&);
+
+#if PLATFORM(HAIKU)
+class CookieJarClient {
+public:
+    virtual ~CookieJarClient() {}
+
+    virtual String cookies(const Document*, const KURL&) = 0;
+    virtual String cookieRequestHeaderFieldValue(const Document*, const KURL&) 
= 0;
+    virtual void setCookies(Document*, const KURL&, const String&) = 0;
+    virtual bool cookiesEnabled(const Document*) = 0;
+    virtual bool getRawCookies(const Document*, const KURL&, Vector<Cookie>&) 
= 0;
+    virtual void deleteCookie(const Document*, const KURL&, const String&) = 0;
+};
 
+void setCookieJarClient(CookieJarClient*);
+#endif // PLATFORM(HAIKU)
 }
 
 #endif

Modified: webkit/trunk/WebCore/platform/haiku/CookieJarHaiku.cpp
==============================================================================
--- webkit/trunk/WebCore/platform/haiku/CookieJarHaiku.cpp      Tue Mar  9 
09:26:44 2010        (r302)
+++ webkit/trunk/WebCore/platform/haiku/CookieJarHaiku.cpp      Tue Mar  9 
11:49:34 2010        (r303)
@@ -33,47 +33,66 @@
 #include "KURL.h"
 #include "PlatformString.h"
 #include "StringHash.h"
-
 #include <wtf/HashMap.h>
 
 
 namespace WebCore {
 
-// FIXME: Shouldn't this be saved to and restored from disk too?
+// This temporary cookie jar is used when the client has not provided one.
 static HashMap<String, String> cookieJar;
 
-void setCookies(Document*, const KURL& url, const String& value)
+// This global CookieJarClient will be used, if set.
+static CookieJarClient* gCookieJarClient;
+
+void setCookieJarClient(CookieJarClient* client)
+{
+    gCookieJarClient = client;
+}
+
+void setCookies(Document* document, const KURL& url, const String& value)
 {
-    cookieJar.set(url.string(), value);
+    if (gCookieJarClient)
+        gCookieJarClient->setCookies(document, url, value);
+    else
+        cookieJar.set(url.string(), value);
 }
 
-String cookies(const Document*, const KURL& url)
+String cookies(const Document* document, const KURL& url)
 {
+    if (gCookieJarClient)
+        return gCookieJarClient->cookies(document, url);
     return cookieJar.get(url.string());
 }
 
-String cookieRequestHeaderFieldValue(const Document*, const KURL& url)
+String cookieRequestHeaderFieldValue(const Document* document, const KURL& url)
 {
-    // FIXME: include HttpOnly cookies.
+    if (gCookieJarClient)
+        return gCookieJarClient->cookieRequestHeaderFieldValue(document, url);
     return cookieJar.get(url.string());
 }
 
-bool cookiesEnabled(const Document*)
+bool cookiesEnabled(const Document* document)
 {
-    // FIXME: This should probably be a setting
+       if (gCookieJarClient)
+           return gCookieJarClient->cookiesEnabled(document);
     return true;
 }
 
-bool getRawCookies(const Document*, const KURL&, Vector<Cookie>& rawCookies)
+bool getRawCookies(const Document* document, const KURL& url, Vector<Cookie>& 
rawCookies)
 {
+       if (gCookieJarClient)
+           return gCookieJarClient->getRawCookies(document, url, rawCookies);
     // FIXME: Not yet implemented
     rawCookies.clear();
     return false; // return true when implemented
 }
 
-void deleteCookie(const Document*, const KURL&, const String&)
+void deleteCookie(const Document* document, const KURL& url, const String& 
name)
 {
-    // FIXME: Not yet implemented
+       if (gCookieJarClient)
+           gCookieJarClient->deleteCookie(document, url, name);
+       else
+        // FIXME: Not yet implemented
 }
 
 } // namespace WebCore

Modified: webkit/trunk/WebKit/Jamfile
==============================================================================
--- webkit/trunk/WebKit/Jamfile Tue Mar  9 09:26:44 2010        (r302)
+++ webkit/trunk/WebKit/Jamfile Tue Mar  9 11:49:34 2010        (r303)
@@ -68,6 +68,7 @@
        # WebCoreSupport
        ChromeClientHaiku.cpp
        ContextMenuClientHaiku.cpp
+       CookieJarClientHaiku.cpp
        DragClientHaiku.cpp
        EditorClientHaiku.cpp
        FrameLoaderClientHaiku.cpp

Modified: webkit/trunk/WebKit/haiku/API/WebPage.cpp
==============================================================================
--- webkit/trunk/WebKit/haiku/API/WebPage.cpp   Tue Mar  9 09:26:44 2010        
(r302)
+++ webkit/trunk/WebKit/haiku/API/WebPage.cpp   Tue Mar  9 11:49:34 2010        
(r303)
@@ -36,6 +36,7 @@
 #include "ContextMenu.h"
 #include "ContextMenuClientHaiku.h"
 #include "ContextMenuController.h"
+#include "CookieJarClientHaiku.h"
 #include "Cursor.h"
 #include "DOMTimer.h"
 #include "DragClientHaiku.h"
@@ -164,7 +165,6 @@
     , m_mainFrame(0)
     , m_settings(0)
     , m_page(0)
-    , m_cookieJar(0)
     , m_pageVisible(true)
     , m_pageDirty(false)
     , m_toolbarsVisible(true)
@@ -233,9 +233,10 @@
     m_downloadListener = listener;
 }
 
-void BWebPage::SetCookieJar(BNetworkCookieJar* cookieJar)
+/*static*/ void BWebPage::SetCookieJar(BNetworkCookieJar* cookieJar)
 {
-    m_cookieJar = cookieJar;
+       static WebCore::CookieJarClientHaiku cookieJarClient(cookieJar);
+       WebCore::setCookieJarClient(&cookieJarClient);
 }
 
 void BWebPage::LoadURL(const char* urlString)

Modified: webkit/trunk/WebKit/haiku/API/WebPage.h
==============================================================================
--- webkit/trunk/WebKit/haiku/API/WebPage.h     Tue Mar  9 09:26:44 2010        
(r302)
+++ webkit/trunk/WebKit/haiku/API/WebPage.h     Tue Mar  9 11:49:34 2010        
(r303)
@@ -81,7 +81,8 @@
 
                        void                            SetListener(const 
BMessenger& listener);
                        void                            
SetDownloadListener(const BMessenger& listener);
-                       void                            
SetCookieJar(BNetworkCookieJar* cookieJar);
+
+       static  void                            SetCookieJar(BNetworkCookieJar* 
cookieJar);
 
                        BWebFrame*                      MainFrame() const;
                        BWebSettings*           Settings() const;
@@ -206,7 +207,6 @@
        BWebFrame* m_mainFrame;
        BWebSettings* m_settings;
        WebCore::Page* m_page;
-       BNetworkCookieJar* m_cookieJar;
 
     bool m_pageVisible;
     bool m_pageDirty;

Added: webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.cpp
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.cpp   Tue Mar 
 9 11:49:34 2010        (r303)
@@ -0,0 +1,81 @@
+/*
+ * Copyright (C) 2010 Stephan Aßmus <superstippi@xxxxxx>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
+ */
+
+#include "config.h"
+#include "CookieJarClientHaiku.h"
+
+#include "Cookie.h"
+#include "KURL.h"
+#include "NetworkCookieJar.h"
+#include "NotImplemented.h"
+#include "PlatformString.h"
+
+
+namespace WebCore {
+
+CookieJarClientHaiku::CookieJarClientHaiku(BNetworkCookieJar* cookieJar)
+    : m_cookieJar(cookieJar)
+{
+}
+
+String CookieJarClientHaiku::cookies(const Document*, const KURL& url)
+{
+       return m_cookieJar->CookiesFor(url.string());
+}
+
+String CookieJarClientHaiku::cookieRequestHeaderFieldValue(const Document*,
+    const KURL& url)
+{
+    return m_cookieJar->CookieRequestHeaderFieldValue(url.string());
+}
+
+void CookieJarClientHaiku::setCookies(Document*, const KURL& url,
+    const String& value)
+{
+    m_cookieJar->SetCookiesFor(url.string(), value);
+}
+
+bool CookieJarClientHaiku::cookiesEnabled(const Document*)
+{
+    return m_cookieJar->CookiesEnabled();
+}
+
+bool CookieJarClientHaiku::getRawCookies(const Document*, const KURL& url,
+    Vector<Cookie>& rawCookies)
+{
+       notImplemented();
+
+    rawCookies.clear();
+    return false;
+}
+
+void CookieJarClientHaiku::deleteCookie(const Document*, const KURL& url,
+    const String& name)
+{
+       notImplemented();
+}
+
+} // namespace WebCore
+

Added: webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.h
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ webkit/trunk/WebKit/haiku/WebCoreSupport/CookieJarClientHaiku.h     Tue Mar 
 9 11:49:34 2010        (r303)
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 Stephan Aßmus <superstippi@xxxxxx>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "CookieJar.h"
+
+class BNetworkCookieJar;
+
+namespace WebCore {
+
+class CookieJarClientHaiku : public CookieJarClient {
+public:
+       CookieJarClientHaiku(BNetworkCookieJar* cookieJar);
+
+    virtual String cookies(const Document*, const KURL&);
+    virtual String cookieRequestHeaderFieldValue(const Document*, const KURL&);
+    virtual void setCookies(Document*, const KURL&, const String&);
+    virtual bool cookiesEnabled(const Document*);
+    virtual bool getRawCookies(const Document*, const KURL&, Vector<Cookie>&);
+    virtual void deleteCookie(const Document*, const KURL&, const String&);
+
+private:
+    BNetworkCookieJar* m_cookieJar;
+};
+
+} // namespace WebCore
+

Modified: webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.cpp
==============================================================================
--- webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.cpp        Tue Mar  9 
09:26:44 2010        (r302)
+++ webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.cpp        Tue Mar  9 
11:49:34 2010        (r303)
@@ -34,6 +34,7 @@
 #include "DownloadWindow.h"
 #include "SettingsMessage.h"
 #include "SettingsWindow.h"
+#include "NetworkCookieJar.h"
 #include "WebPage.h"
 #include "WebSettings.h"
 #include "WebView.h"
@@ -61,6 +62,7 @@
        fLaunchRefsMessage(0),
        fInitialized(false),
        fSettings(NULL),
+       fCookieJar(NULL),
        fDownloadWindow(NULL),
        fSettingsWindow(NULL)
 {
@@ -72,6 +74,8 @@
 {
        delete fLaunchRefsMessage;
        delete fSettings;
+       delete fCookies;
+       delete fCookieJar;
 }
 
 
@@ -125,6 +129,14 @@
        mainSettingsPath << "/Application";
        fSettings = new SettingsMessage(B_USER_SETTINGS_DIRECTORY,
                mainSettingsPath.String());
+       mainSettingsPath = kApplicationName;
+       mainSettingsPath << "/Cookies";
+       fCookies = new SettingsMessage(B_USER_SETTINGS_DIRECTORY,
+               mainSettingsPath.String());
+       BMessage cookieArchive;
+       cookieArchive = fCookies->GetValue("cookies", cookieArchive);
+       fCookieJar = new BNetworkCookieJar(cookieArchive);
+       BWebPage::SetCookieJar(fCookieJar);
 
        fLastWindowFrame = fSettings->GetValue("window frame", 
fLastWindowFrame);
        BRect downloadWindowFrame = fSettings->GetValue("downloads window 
frame",
@@ -261,6 +273,10 @@
                fSettingsWindow->Unlock();
        }
 
+       BMessage cookieArchive;
+       if (fCookieJar->Archive(&cookieArchive) == B_OK)
+               fCookies->SetValue("cookies", cookieArchive);
+
        return true;
 }
 

Modified: webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.h
==============================================================================
--- webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.h  Tue Mar  9 09:26:44 
2010        (r302)
+++ webkit/trunk/WebKit/haiku/WebPositive/BrowserApp.h  Tue Mar  9 11:49:34 
2010        (r303)
@@ -33,6 +33,7 @@
 #include <Catalog.h>
 #include <Rect.h>
 
+class BNetworkCookieJar;
 class DownloadWindow;
 class BrowserWindow;
 class SettingsMessage;
@@ -66,6 +67,8 @@
                        bool                            fInitialized;
 
                        SettingsMessage*        fSettings;
+                       SettingsMessage*        fCookies;
+                       BNetworkCookieJar*      fCookieJar;
 
                        DownloadWindow*         fDownloadWindow;
                        SettingsWindow*         fSettingsWindow;

Modified: webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp
==============================================================================
--- webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp     Tue Mar  9 
09:26:44 2010        (r302)
+++ webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp     Tue Mar  9 
11:49:34 2010        (r303)
@@ -197,10 +197,11 @@
 
 BrowserWindow::BrowserWindow(BRect frame, const BMessenger& downloadListener,
                ToolbarPolicy toolbarPolicy)
-       : BWebWindow(frame, kApplicationName,
+       :
+       BWebWindow(frame, kApplicationName,
                B_DOCUMENT_WINDOW_LOOK, B_NORMAL_WINDOW_FEEL,
-               B_AUTO_UPDATE_SIZE_LIMITS | B_ASYNCHRONOUS_CONTROLS)
-       , fDownloadListener(downloadListener)
+               B_AUTO_UPDATE_SIZE_LIMITS | B_ASYNCHRONOUS_CONTROLS),
+       fDownloadListener(downloadListener)
 {
        BMessage* newTabMessage = new BMessage(NEW_TAB);
        newTabMessage->AddString("url", "");
@@ -346,11 +347,8 @@
                fStatusText = 0;
                fLoadingProgressBar = 0;
 
-               BWebView* webView = new BWebView("web_view");
-               SetCurrentWebView(webView);
-
-               AddChild(BGroupLayoutBuilder(B_VERTICAL, 7)
-                       .Add(CurrentWebView())
+               AddChild(BGroupLayoutBuilder(B_VERTICAL)
+                       .Add(fTabManager->ContainerView())
                );
        }
 

Modified: webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.cpp
==============================================================================
--- webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.cpp   Tue Mar 
 9 09:26:44 2010        (r302)
+++ webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.cpp   Tue Mar 
 9 11:49:34 2010        (r303)
@@ -186,11 +186,11 @@
 
 
 status_t
-SettingsMessage::SetValue(const char* name, const BMessage* value)
+SettingsMessage::SetValue(const char* name, const BMessage& value)
 {
-       if (ReplaceMessage(name, value) == B_OK)
+       if (ReplaceMessage(name, &value) == B_OK)
                return B_OK;
-       return AddMessage(name, value);
+       return AddMessage(name, &value);
 }
 
 

Modified: webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.h
==============================================================================
--- webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.h     Tue Mar 
 9 09:26:44 2010        (r302)
+++ webkit/trunk/WebKit/haiku/WebPositive/support/SettingsMessage.h     Tue Mar 
 9 11:49:34 2010        (r303)
@@ -41,7 +41,7 @@
                        status_t                        SetValue(const char* 
name, const BRect& value);
                        status_t                        SetValue(const char* 
name, const entry_ref& value);
                        status_t                        SetValue(const char* 
name,
-                                                                       const 
BMessage* value);
+                                                                       const 
BMessage& value);
                        status_t                        SetValue(const char* 
name,
                                                                        const 
BFlattenable* value);
                        status_t                        SetValue(const char* 
name,

Other related posts:

  • » [haiku-webkit-commits] r303 - in webkit/trunk: WebCore WebCore/platform WebCore/platform/haiku WebKit WebKit/haiku/API WebKit/haiku/WebCoreSupport WebKit/haiku/WebPositive WebKit/haiku/WebPositive/support - webkit