[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/as_environment.cpp serve...
From: |
Sandro Santilli |
Subject: |
[Gnash-commit] gnash ChangeLog server/as_environment.cpp serve... |
Date: |
Thu, 07 Dec 2006 14:35:25 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Sandro Santilli <strk> 06/12/07 14:35:25
Modified files:
. : ChangeLog
server : as_environment.cpp
server/vm : ASHandlers.cpp
Log message:
* server/as_environment.cpp (find_target):
fixed handling of paths ending with a slash
(example: '../').
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.1878&r2=1.1879
http://cvs.savannah.gnu.org/viewcvs/gnash/server/as_environment.cpp?cvsroot=gnash&r1=1.33&r2=1.34
http://cvs.savannah.gnu.org/viewcvs/gnash/server/vm/ASHandlers.cpp?cvsroot=gnash&r1=1.9&r2=1.10
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.1878
retrieving revision 1.1879
diff -u -b -r1.1878 -r1.1879
--- ChangeLog 7 Dec 2006 14:16:46 -0000 1.1878
+++ ChangeLog 7 Dec 2006 14:35:24 -0000 1.1879
@@ -1,5 +1,11 @@
2006-12-07 Sandro Santilli <address@hidden>
+ * server/as_environment.cpp (find_target):
+ fixed handling of paths ending with a slash
+ (example: '../').
+ * server/vm/ASHandlers.cpp (ActionGetProperty):
+ raise a warning if the target is not found
+ (ASCODING ERROR)
* server/as_environment.{cpp,h}: registers
debugging functions moved to implementation
file, don't print local registers if empty.
Index: server/as_environment.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/as_environment.cpp,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -b -r1.33 -r1.34
--- server/as_environment.cpp 7 Dec 2006 14:16:46 -0000 1.33
+++ server/as_environment.cpp 7 Dec 2006 14:35:25 -0000 1.34
@@ -16,7 +16,7 @@
//
-/* $Id: as_environment.cpp,v 1.33 2006/12/07 14:16:46 strk Exp $ */
+/* $Id: as_environment.cpp,v 1.34 2006/12/07 14:35:25 strk Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -419,7 +419,10 @@
character*
as_environment::find_target(const std::string& path) const
{
+ //log_msg("find_target(%s) called", path.c_str());
+
if (path.length() <= 0) {
+ //log_msg("Returning m_target");
return m_target;
}
@@ -434,6 +437,7 @@
if (*p == '/') {
// Absolute path. Start at the root.
env = env->get_root_movie();
+ //log_msg("Absolute path, start at the root (%p)", (void*)env);
p++;
}
@@ -446,13 +450,16 @@
const char* next_slash = next_slash_or_dot(p);
subpart = p;
if (next_slash == p) {
- log_error("error: invalid path '%s'", path.c_str());
+ log_error("invalid path '%s'", path.c_str());
break;
} else if (next_slash) {
// Cut off the slash and everything after it.
subpart.resize(next_slash - p);
}
+ // No more components to scan
+ if ( subpart.empty() ) break;
+
env = env->get_relative_target(subpart);
//@@ _level0 --> root, .. --> parent, . --> this, other == character
Index: server/vm/ASHandlers.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/vm/ASHandlers.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- server/vm/ASHandlers.cpp 6 Dec 2006 10:58:34 -0000 1.9
+++ server/vm/ASHandlers.cpp 7 Dec 2006 14:35:25 -0000 1.10
@@ -16,7 +16,7 @@
//
-/* $Id: ASHandlers.cpp,v 1.9 2006/12/06 10:58:34 strk Exp $ */
+/* $Id: ASHandlers.cpp,v 1.10 2006/12/07 14:35:25 strk Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -1121,7 +1121,8 @@
ensure_stack(env, 2); // prop num, target
- character *target = env.find_target(env.top(1));
+ as_value& tgt_val = env.top(1);
+ character *target = env.find_target(tgt_val);
unsigned int prop_number = (unsigned int)env.top(0).to_number();
if (target)
{
@@ -1141,6 +1142,11 @@
}
else
{
+ // ASCODING error ? (well, last time it was a gnash error ;)
+ IF_VERBOSE_ASCODING_ERRORS (
+ log_warning("Could not find GetProperty target (%s)",
+ tgt_val.to_string());
+ );
env.top(1) = as_value();
}
env.drop(1);
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/07
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve...,
Sandro Santilli <=
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/08
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/14
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/14
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/18
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/19
- [Gnash-commit] gnash ChangeLog server/as_environment.cpp serve..., Sandro Santilli, 2006/12/19