gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog gui/Player.cpp


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog gui/Player.cpp
Date: Sat, 17 May 2008 09:33:34 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  08/05/17 09:33:34

Modified files:
        .              : ChangeLog 
        gui            : Player.cpp 

Log message:
        * gui/Player.cpp (run): support relative urls in 'base' parameter,
          always resolve against baseurl given with -U or derived from -u
          or filename. Fixes bug #23260.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6629&r2=1.6630
http://cvs.savannah.gnu.org/viewcvs/gnash/gui/Player.cpp?cvsroot=gnash&r1=1.109&r2=1.110

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6629
retrieving revision 1.6630
diff -u -b -r1.6629 -r1.6630
--- ChangeLog   16 May 2008 20:49:46 -0000      1.6629
+++ ChangeLog   17 May 2008 09:33:29 -0000      1.6630
@@ -1,3 +1,9 @@
+2008-05-17 Sandro Santilli <address@hidden>
+
+       * gui/Player.cpp (run): support relative urls in 'base' parameter,
+         always resolve against baseurl given with -U or derived from -u
+         or filename. Fixes bug #23260.
+
 2008-05-16 Russ Nelson <address@hidden>
 
        Fix references to Bitstream-Vera-Sans:

Index: gui/Player.cpp
===================================================================
RCS file: /sources/gnash/gnash/gui/Player.cpp,v
retrieving revision 1.109
retrieving revision 1.110
diff -u -b -r1.109 -r1.110
--- gui/Player.cpp      5 May 2008 18:58:04 -0000       1.109
+++ gui/Player.cpp      17 May 2008 09:33:31 -0000      1.110
@@ -320,6 +320,12 @@
         // Parse querystring (before FlashVars, see 
testsuite/misc-ming.all/FlashVarsTest*)
     setFlashVars(URL(_url).querystring());
 
+    // These flags are here so we can construct
+    // the correct URL for base url later.
+    // If the URL class was not immutable we could do something smarter...
+    bool hasOverriddenBaseUrl;
+    std::string overriddenBaseUrl;
+
     // Parse parameters
     StringNoCaseEqual noCaseCompare;
     for ( std::map<std::string,std::string>::const_iterator it=params.begin(),
@@ -333,13 +339,15 @@
 
             if ( noCaseCompare(it->first, "base") )
         {
-            setBaseUrl(it->second);
+            hasOverriddenBaseUrl=true;
+            overriddenBaseUrl=it->second;
             continue;
         }
     }
 
     // Set base url for this movie (needed before parsing)
-    gnash::set_base_url(URL(_baseurl));
+    if ( hasOverriddenBaseUrl ) gnash::set_base_url(URL(overriddenBaseUrl, 
URL(_baseurl)));
+    else gnash::set_base_url(URL(_baseurl));
 
     // Load the actual movie.
     _movieDef = load_movie();




reply via email to

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