gnash-commit
[Top][All Lists]
Advanced

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

AW: [Gnash-commit] gnash ChangeLog libbase/URL.h server/sprite_ins...


From: Benjamin Wolsey
Subject: AW: [Gnash-commit] gnash ChangeLog libbase/URL.h server/sprite_ins...
Date: Sat, 12 Jan 2008 15:50:50 +0000 (GMT)

This movie:

http://service.tagesschau.de/infografik/deutschlandtrend/2008/flashcontainer08ts.swf

now fails with the messages

12305] 16:41:17: get url: target=_root, 
url=http://service.tagesschau.de/infografik/deutschlandtrend/2008/htmlparams.txt
 (htmlparams.txt), method=c0 (sendVars:0, loadTarget:1, loadVariable:1)
12305] 16:41:17: SECURITY: Load from host service.tagesschau.de granted 
(default).
12305] 16:41:17: getURL2 loadVariable
12305] 16:41:17: SECURITY: Load from host service.tagesschau..de granted 
(default).
(...)
12305] 16:41:18: ERROR: HTTP response 405 from url 
http://service.tagesschau.de/infografik/deutschlandtrend/2008/htmlparams.txt
12305] 16:41:18: ERROR: Size of stream variables were loaded from advertised to 
be 0 bytes long, but turned out to be only 343 bytes long

It didn't work properly before, but it didn't get the response 405 (method not 
allowed), suggesting these commits might have broken something else.


----- Ursprüngliche Mail ----
> Von: Udo Giacomozzi <address@hidden>
> An: address@hidden
> Gesendet: Samstag, den 12. Januar 2008, 13:48:07 Uhr
> Betreff: [Gnash-commit] gnash ChangeLog libbase/URL.h server/sprite_ins...
> 
> CVSROOT:    /cvsroot/gnash
> Module name:    gnash
> Changes by:    Udo Giacomozzi     08/01/12 12:48:07
> 
> Modified files:
>     .              : ChangeLog 
>     libbase        : URL.h 
>     server         : sprite_instance.cpp sprite_instance.h 
> 
> Log message:
>     * libbase/URL.h: add set method for querystring
>     * server/sprite_instance.{cpp,h}: implement GET and POST for 
>       loadVariables()
> 
> CVSWeb URLs:
> http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.5384&r2=1
> .5385
> http://cvs.savannah.gnu.org/viewcvs/gnash/libbase/URL.h?cvsroot=gnash&r1=1.18&r2
> =1.19
> http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.cpp?cvsroot=gna
> sh&r1=1.442&r2=1.443
> http://cvs.savannah.gnu.org/viewcvs/gnash/server/sprite_instance.h?cvsroot=gnash
> &r1=1.163&r2=1.164
> 
> Patches:
> Index: ChangeLog
> ===================================================================
> RCS file: /cvsroot/gnash/gnash/ChangeLog,v
> retrieving revision 1.5384
> retrieving revision 1.5385
> diff -u -b -r1.5384 -r1.5385
> --- ChangeLog    11 Jan 2008 18:35:49 -0000    1.5384
> +++ ChangeLog    12 Jan 2008 12:48:06 -0000    1.5385
> @@ -1,3 +1,9 @@
> +2008-01-12 Udo Giacomozzi 
> +
> +    * libbase/URL.h: add set method for querystring
> +    * server/sprite_instance.{cpp,h}: implement GET and POST for 
> +      loadVariables()    
> +
>  2008-01-11 Sandro Santilli 
>  
>      * testsuite/generic-testrunner.sh: sleep a tenth (1/10)
> 
> Index: libbase/URL.h
> ===================================================================
> RCS file: /cvsroot/gnash/gnash/libbase/URL.h,v
> retrieving revision 1.18
> retrieving revision 1.19
> diff -u -b -r1.18 -r1.19
> --- libbase/URL.h    13 Dec 2007 01:08:06 -0000    1.18
> +++ libbase/URL.h    12 Jan 2008 12:48:06 -0000    1.19
> @@ -86,6 +86,10 @@
>      ///
>      std::string querystring() const { return _querystring; }
>  
> +    /// Set the 'querystring' member of this URL to a new value
> +  ///
> +  void set_querystring(std::string value) { _querystring = value; } 
> +
>      /// Return the full absolute URL as a string.
>      //
>      /// TODO: make output operator and operator+ for strings
> 
> Index: server/sprite_instance.cpp
> ===================================================================
> RCS file: /cvsroot/gnash/gnash/server/sprite_instance.cpp,v
> retrieving revision 1.442
> retrieving revision 1.443
> diff -u -b -r1.442 -r1.443
> --- server/sprite_instance.cpp    12 Jan 2008 11:04:33 -0000    1.442
> +++ server/sprite_instance.cpp    12 Jan 2008 12:48:06 -0000    1.443
> @@ -3934,20 +3934,58 @@
>  }
>  
>  void 
> -sprite_instance::loadVariables(const URL& url, short sendVarsMethod)
> +sprite_instance::loadVariables(URL url, short sendVarsMethod)
>  {
>      // Check host security
>      // will be done by LoadVariablesThread (down by getStream,
> that
> 
 is)
>      //if ( ! URLAccessManager::allow(url) ) return;
>      
> -    if ( sendVarsMethod )
> +    std::string postdata = "";
> +    
> +    if ( sendVarsMethod )    // 1=GET, 2=POST
> +    {
> +    
> +    typedef std::map PropMap;
> +    PropMap props;
> +    dump_members(props);
> +
> +    std::string del = "";
> +    std::string data = "";
> +    
> +    if ( sendVarsMethod == 1 ) {  // GET
> +      if (url.querystring() != "")
> +        del = "&";
> +      else 
> +        del = "?";
> +    }
> +    
> +    for (PropMap::iterator i=props.begin(), e=props.end(); i!=e; ++i)
>      {
> -        log_unimpl(_("MovieClip.loadVariables() with GET/POST
> won't
> 
 append vars for now"));
> +      std::string name = i->first;
> +      std::string value = url.encode(i->second.to_string());      
> +            
> +      // This is to filter movieclip properties from local
> variables.
> 
 I am 
> +      // sure there is a better way to do it [TODO]
> +      if (name[0] == '_') continue;
> +      if (name == "$version") continue;
> +      
> +      data += del + name + "=" + value;
> +      
> +      del = "&";
> +        
> +    }
> +    
> +    if ( sendVarsMethod == 1 )  // GET 
> +      url.set_querystring(url.querystring() + data);
> +    else
> +    if ( sendVarsMethod == 2 )  // POST
> +      postdata = data;
> +    
>      }
>  
>      try 
>      {
> -        _loadVariableRequests.push_back(new LoadVariablesThread(url));
> +        _loadVariableRequests.push_back(new
> LoadVariablesThread(url,
> 
 postdata));
>          _loadVariableRequests.back()->process();
>      }
>      catch (NetworkException& ex)
> 
> Index: server/sprite_instance.h
> ===================================================================
> RCS file: /cvsroot/gnash/gnash/server/sprite_instance.h,v
> retrieving revision 1.163
> retrieving revision 1.164
> diff -u -b -r1.163 -r1.164
> --- server/sprite_instance.h    2 Jan 2008 19:08:32 -0000    1.163
> +++ server/sprite_instance.h    12 Jan 2008 12:48:07 -0000    1.164
> @@ -594,7 +594,7 @@
>      ///    If 1, GET will be used.
>      ///    If 2, POST will be used.
>      ///
> -    void loadVariables(const URL& url, short sendVarsMethod=0);
> +    void loadVariables(URL url, short sendVarsMethod=0);
>  
>      //
>      // ActionScript support
> 
> 
> _______________________________________________
> Gnash-commit mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/gnash-commit
> 




      Heute schon einen Blick in die Zukunft von E-Mails wagen? Versuchen Sie´s 
mit dem neuen Yahoo! Mail. www.yahoo..de/mail





reply via email to

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