gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog server/asobj/SharedObject.cpp t...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/asobj/SharedObject.cpp t...
Date: Thu, 29 Mar 2007 12:57:36 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/03/29 12:57:36

Modified files:
        .              : ChangeLog 
        server/asobj   : SharedObject.cpp 
        testsuite/actionscript.all: SharedObject.as 

Log message:
        * server/asobj/SharedObject.cpp: better stubs (nothing more).

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.2717&r2=1.2718
http://cvs.savannah.gnu.org/viewcvs/gnash/server/asobj/SharedObject.cpp?cvsroot=gnash&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/gnash/testsuite/actionscript.all/SharedObject.as?cvsroot=gnash&r1=1.7&r2=1.8

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.2717
retrieving revision 1.2718
diff -u -b -r1.2717 -r1.2718
--- ChangeLog   29 Mar 2007 12:37:31 -0000      1.2717
+++ ChangeLog   29 Mar 2007 12:57:36 -0000      1.2718
@@ -1,5 +1,9 @@
 2007-03-29 Sandro Santilli <address@hidden>
 
+       * server/asobj/SharedObject.cpp: better stubs (nothing more).
+
+2007-03-29 Sandro Santilli <address@hidden>
+
        * server/movie_root.{cpp,h}: support for
          setting scaleMode (allow scaling) and
          notifying Stage listeners when disabled.

Index: server/asobj/SharedObject.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/asobj/SharedObject.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- server/asobj/SharedObject.cpp       19 Mar 2007 17:11:14 -0000      1.7
+++ server/asobj/SharedObject.cpp       29 Mar 2007 12:57:36 -0000      1.8
@@ -41,10 +41,16 @@
        // TODO: clear, flush and getSize not in SWF<6 , it seems
        o.init_member("clear", new builtin_function(sharedobject_clear));
        o.init_member("flush", new builtin_function(sharedobject_flush));
-       o.init_member("getLocal", new builtin_function(sharedobject_getlocal));
+       //o.init_member("getLocal", new 
builtin_function(sharedobject_getlocal));
        o.init_member("getSize", new builtin_function(sharedobject_getsize));
 }
 
+static void
+attachSharedObjectStaticInterface(as_object& o)
+{
+       o.init_member("getLocal", new builtin_function(sharedobject_getlocal));
+}
+
 static as_object*
 getSharedObjectInterface()
 {
@@ -57,12 +63,12 @@
        return o.get();
 }
 
-class sharedobject_as_object: public as_object
+class SharedObject: public as_object
 {
 
 public:
 
-       sharedobject_as_object()
+       SharedObject()
                :
                as_object(getSharedObjectInterface())
        {}
@@ -74,27 +80,64 @@
        //double get_numeric_value() const { return 0; }
 };
 
-as_value sharedobject_clear(const fn_call& /*fn*/) {
-    log_warning("%s: unimplemented \n", __FUNCTION__);
+as_value sharedobject_clear(const fn_call& fn)
+{
+       boost::intrusive_ptr<SharedObject> obj = 
ensureType<SharedObject>(fn.this_ptr);
+       UNUSED(obj);
+
+       static bool warned=false;
+       if ( ! warned ) {
+               log_error("FIXME: %s: unimplemented", __FUNCTION__);
+               warned=true;
+       }
     return as_value();
 }
-as_value sharedobject_flush(const fn_call& /*fn*/) {
-    log_warning("%s: unimplemented \n", __FUNCTION__);
+
+as_value sharedobject_flush(const fn_call& fn)
+{
+       boost::intrusive_ptr<SharedObject> obj = 
ensureType<SharedObject>(fn.this_ptr);
+       UNUSED(obj);
+
+       static bool warned=false;
+       if ( ! warned ) {
+               log_error("FIXME: %s: unimplemented", __FUNCTION__);
+               warned=true;
+       }
     return as_value();
 }
-as_value sharedobject_getlocal(const fn_call& /*fn*/) {
-    log_warning("%s: unimplemented \n", __FUNCTION__);
+
+as_value sharedobject_getlocal(const fn_call& /*fn*/)
+{
+       // This should return a SharedObject, and it's a static function
+
+       //boost::intrusive_ptr<SharedObject> obj = 
ensureType<SharedObject>(fn.this_ptr);
+       //UNUSED(obj);
+
+       static bool warned=false;
+       if ( ! warned ) {
+               log_error("FIXME: %s: unimplemented", __FUNCTION__);
+               warned=true;
+       }
     return as_value();
 }
-as_value sharedobject_getsize(const fn_call& /*fn*/) {
-    log_warning("%s: unimplemented \n", __FUNCTION__);
+
+as_value sharedobject_getsize(const fn_call& fn)
+{
+       boost::intrusive_ptr<SharedObject> obj = 
ensureType<SharedObject>(fn.this_ptr);
+       UNUSED(obj);
+
+       static bool warned=false;
+       if ( ! warned ) {
+               log_error("FIXME: %s: unimplemented", __FUNCTION__);
+               warned=true;
+       }
     return as_value();
 }
 
 as_value
 sharedobject_ctor(const fn_call& /* fn */)
 {
-       boost::intrusive_ptr<as_object> obj = new sharedobject_as_object;
+       boost::intrusive_ptr<as_object> obj = new SharedObject;
        
        return as_value(obj.get()); // will keep alive
 }
@@ -110,7 +153,7 @@
                cl=new builtin_function(&sharedobject_ctor, 
getSharedObjectInterface());
                // replicate all interface to class, to be able to access
                // all methods as static functions
-               attachSharedObjectInterface(*cl);
+               attachSharedObjectStaticInterface(*cl);
                     
        }
 

Index: testsuite/actionscript.all/SharedObject.as
===================================================================
RCS file: /sources/gnash/gnash/testsuite/actionscript.all/SharedObject.as,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- testsuite/actionscript.all/SharedObject.as  11 Jan 2007 11:56:20 -0000      
1.7
+++ testsuite/actionscript.all/SharedObject.as  29 Mar 2007 12:57:36 -0000      
1.8
@@ -20,7 +20,7 @@
 // compile this test case with Ming makeswf, and then
 // execute it like this gnash -1 -r 0 -v out.swf
 
-rcsid="$Id: SharedObject.as,v 1.7 2007/01/11 11:56:20 strk Exp $";
+rcsid="$Id: SharedObject.as,v 1.8 2007/03/29 12:57:36 strk Exp $";
 
 #include "check.as"
 
@@ -46,7 +46,7 @@
 check_equals (typeof(sharedobjectObj.flush), 'function');
 
 // test the SharedObject::getlocal method
-xcheck_equals (typeof(sharedobjectObj.getLocal), 'undefined');
+check_equals (typeof(sharedobjectObj.getLocal), 'undefined');
 check_equals (typeof(SharedObject.getLocal), 'function');
 
 // test the SharedObject::getsize method




reply via email to

[Prev in Thread] Current Thread [Next in Thread]