gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] gnash ChangeLog plugin/plugin.cpp plugin/klash/...


From: Rob Savoye
Subject: [Gnash-commit] gnash ChangeLog plugin/plugin.cpp plugin/klash/...
Date: Thu, 08 Jun 2006 05:24:02 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Rob Savoye <rsavoye>    06/06/08 05:24:02

Modified files:
        .              : ChangeLog 
        plugin         : plugin.cpp 
        plugin/klash   : klash.cpp 

Log message:
                * plugin/plugin.cpp: Adjust the size of the URL buffer based on
                size. Gracefully handle an error when we get "&&" in a URL so
                Firefox doesn't crash.
                * plugin/klash/klash.cpp: Use new logging functions for actions
                and parsing.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.394&r2=1.395
http://cvs.savannah.gnu.org/viewcvs/gnash/plugin/plugin.cpp?cvsroot=gnash&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/gnash/plugin/klash/klash.cpp?cvsroot=gnash&r1=1.7&r2=1.8

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.394
retrieving revision 1.395
diff -u -b -r1.394 -r1.395
--- ChangeLog   8 Jun 2006 04:16:19 -0000       1.394
+++ ChangeLog   8 Jun 2006 05:24:02 -0000       1.395
@@ -1,5 +1,12 @@
 2006-06-08 Rob Savoye <address@hidden>
 
+       * plugin/plugin.cpp: Adjust the size of the URL buffer based on
+       size. Gracefully handle an error when we get "&&" in a URL so
+       Firefox doesn't crash.
+       * plugin/klash/klash.cpp: Use new logging functions for actions
+       and parsing.
+
+
        * libbase/URL.cpp: Add support for using the config file for
        security settings. Add host_check() to compare a hostname against
        security settings before accessing remote Flash movies. Look for

Index: plugin/plugin.cpp
===================================================================
RCS file: /sources/gnash/gnash/plugin/plugin.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- plugin/plugin.cpp   30 May 2006 14:49:54 -0000      1.30
+++ plugin/plugin.cpp   8 Jun 2006 05:24:02 -0000       1.31
@@ -460,7 +460,10 @@
     destroyContext();
 // end of USE_FORK
 #endif
+    if (_childpid) {
     kill(_childpid, SIGINT);
+    }
+    
     _childpid = 0;
 }
 
@@ -605,9 +608,9 @@
                             NPBool seekable, uint16 * stype)
 {
 //    log_trace("%s: enter for instance %p", __PRETTY_FUNCTION__, this);    
-    
-    char tmp[300];
-    memset(tmp, 0, 300);
+    int len = strlen(stream->url)+1;
+    char tmp[len];
+    memset(tmp, 0, len);
     string url = stream->url;
     string fname, opts;
     size_t start, end, eq;
@@ -628,6 +631,9 @@
        opts = url.substr(start+1, end);
     }
 
+    string name;
+    string value;
+    
     dbglogfile << __FUNCTION__ << ": The full URL is " << url << endl;
     while (opts.size() > 0) {
        start = 0;
@@ -642,8 +648,12 @@
        if (eq == string::npos) {
            eq = opts.size();
        }
-       string name = opts.substr(start, eq);
-       string value = opts.substr(eq+1, end-eq-1);
+       if (end == string::npos) {
+           return NPERR_NO_ERROR;
+       } else {
+           name = opts.substr(start, eq);
+           value = opts.substr(eq+1, end-eq-1);
+       }
        if (dumpopts) {
            dbglogfile << __FUNCTION__ << "Option " << name << " = "
                       << value << endl;
@@ -663,8 +673,10 @@
        if ((opts.size() > end) && (opts[end] == '&')) {
                end++;
        }
+       if (end != string::npos) {
        opts.erase(start, end);
     }
+    }
     
     //  log_msg("%s: URL is %s", __PRETTY_FUNCTION__, url.c_str());
 //     log_msg("%s: Open stream for %s, this = %p", __FUNCTION__,

Index: plugin/klash/klash.cpp
===================================================================
RCS file: /sources/gnash/gnash/plugin/klash/klash.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- plugin/klash/klash.cpp      24 May 2006 10:11:45 -0000      1.7
+++ plugin/klash/klash.cpp      8 Jun 2006 05:24:02 -0000       1.8
@@ -68,6 +68,7 @@
 #include "xmlsocket.h"
 #include "movie_definition.h"
 #include "URL.h"
+#include "rc.h"
 
 using namespace std;
 using namespace gnash;
@@ -297,6 +298,32 @@
 
     dbglogfile.setWriteDisk(false);
     
+    rcfile.loadFiles();
+//    rcfile.dump();
+
+    if (rcfile.useWriteLog()) {
+        dbglogfile.setWriteDisk(true);
+    }
+    
+    if (rcfile.verbosityLevel() > 0) {
+        dbglogfile.setVerbosity(rcfile.verbosityLevel());
+    }
+    
+    if (rcfile.useActionDump()) {
+        dbglogfile.setActionDump(true);
+        dbglogfile.setVerbosity();
+    }
+    
+    if (rcfile.useParserDump()) {
+        dbglogfile.setParserDump(true);
+        dbglogfile.setVerbosity();
+    }
+    
+    if (rcfile.getTimerDelay() > 0) {
+        delay = rcfile.getTimerDelay();
+        dbglogfile << "Timer delay set to " << delay << "milliseconds" << endl;
+    }
+
     while ((c = getopt (argc, argv, "hvaps:cfd:m:x:r:t:b:1ewj:k:u:")) != -1) {
        switch (c) {
          case 'h':
@@ -311,10 +338,10 @@
              dbglogfile << "Logging to disk enabled." << endl;
              break;
          case 'a':
-             gnash::set_verbose_action(true);
+             dbglogfile.setActionDump(true);              
              break;
          case 'p':
-             gnash::set_verbose_parse(true);
+             dbglogfile.setParserDump(true);
              break;
           case 'f':
               s_measure_performance = true;




reply via email to

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