[
  [
    "dev/null", 
    "src/3rdParty/webkit/patches/moto-jsvalue-equal.patch", 
    [
      "Index: src/3rdParty/webkit/patches/moto-jsvalue-equal.patch", 
      "===================================================================", 
      "--- dev/null", 
      "+++ src/3rdParty/webkit/patches/moto-jsvalue-equal.patch", 
      "@@ -0,0 +1,65 @@", 
      "+diff -urN work.orig/JavaScriptCore/bindings/runtime_object.h work/JavaScriptCore/bindings/runtime_object.h", 
      "+--- work.orig/JavaScriptCore/bindings/runtime_object.h", 
      "++++ work/JavaScriptCore/bindings/runtime_object.h", 
      "+@@ -28,7 +28,7 @@", 
      "+", 
      "+ #include \"runtime.h\"", 
      "+ #include \"object.h\"", 
      "+-", 
      "++#include \"operations.h\"", 
      "+ #include <wtf/Noncopyable.h>", 
      "+", 
      "+ namespace KJS {", 
      "+@@ -50,6 +50,15 @@", 
      "+", 
      "+     virtual void invalidate();", 
      "+     Bindings::Instance *getInternalInstance() const { return instance.get(); }", 
      "++", 
      "++    virtual bool compare(ExecState* exec, JSObject *obj) {", 
      "++      if (obj == NULL) return false;", 
      "++      if (className() == obj->className()) {", 
      "++         RuntimeObjectImp *robj = (RuntimeObjectImp *)obj;", 
      "++         return equal(exec, getInternalInstance()->valueOf(), robj->getInternalInstance()->valueOf());", 
      "++      }", 
      "++      return (this==obj);", 
      "++    }", 
      "+", 
      "+     static JSObject* throwInvalidAccessError(ExecState*);", 
      "+", 
      "+diff -urN work.orig/JavaScriptCore/kjs/object.h work/JavaScriptCore/kjs/object.h", 
      "+--- work.orig/JavaScriptCore/kjs/object.h", 
      "++++ work/JavaScriptCore/kjs/object.h", 
      "+@@ -114,7 +114,7 @@", 
      "+", 
      "+     virtual void mark();", 
      "+     virtual JSType type() const;", 
      "+-", 
      "++    virtual bool compare(ExecState* exec, JSObject *obj) { return this == obj; }", 
      "+     /**", 
      "+      * A pointer to a ClassInfo struct for this class. This provides a basic", 
      "+      * facility for run-time type information, and can be used to check an", 
      "+diff -urN work.orig/JavaScriptCore/kjs/operations.cpp work/JavaScriptCore/kjs/operations.cpp", 
      "+--- work.orig/JavaScriptCore/kjs/operations.cpp", 
      "++++ work/JavaScriptCore/kjs/operations.cpp", 
      "+@@ -95,6 +95,10 @@", 
      "+         return v1->toBoolean(exec) == v2->toBoolean(exec);", 
      "+", 
      "+     // types are Object", 
      "++    JSObject *o1 = v1 ? v1->getObject() : NULL;", 
      "++    JSObject *o2 = v2 ? v2->getObject() : NULL;", 
      "++    if (o1 != NULL && o2 != NULL && v1 != v2)", 
      "++      return o1->compare(exec, o2);", 
      "+     return v1 == v2;", 
      "+ }", 
      "+", 
      "+@@ -118,6 +122,10 @@", 
      "+     else if (t2 == BooleanType)", 
      "+         return v1->toBoolean(exec) == v2->toBoolean(exec);", 
      "+", 
      "++    JSObject *o1 = v1 ? v1->getObject() : NULL;", 
      "++    JSObject *o2 = v2 ? v2->getObject() : NULL;", 
      "++    if (o1 != NULL && o2 != NULL && v1 != v2)", 
      "++      return o1->compare(exec, o2);", 
      "+     if (v1 == v2)", 
      "+         return true;", 
      "+     /* TODO: joined objects */"
    ]
  ], 
  [
    "src.orig/3rdParty/webkit/patches/series", 
    "src/3rdParty/webkit/patches/series", 
    [
      "Index: src/3rdParty/webkit/patches/series", 
      "===================================================================", 
      "--- src.orig/3rdParty/webkit/patches/series", 
      "+++ src/3rdParty/webkit/patches/series", 
      "@@ -19,6 +19,7 @@ jscore-vector-alignment.patch", 
      "webcore-arena-alignment.patch", 
      "ekioh-png-uclibc.patch", 
      "webcore-enclosing-int-rect.patch", 
      "+moto-jsvalue-equal.patch", 
      "moto-timer.patch", 
      "moto-dump.patch", 
      "debug-fixes.patch"
    ]
  ]
]