[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/parser/movie_def_impl.cp...
From: |
Benjamin Wolsey |
Subject: |
[Gnash-commit] gnash ChangeLog server/parser/movie_def_impl.cp... |
Date: |
Fri, 23 May 2008 15:21:28 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Benjamin Wolsey <bwy> 08/05/23 15:21:28
Modified files:
. : ChangeLog
server/parser : movie_def_impl.cpp movie_def_impl.h
sprite_definition.cpp sprite_definition.h
Log message:
* server/sprite_instance.{h,cpp},
server/parser/movie_def_impl.{h,cpp}: use StringNoCaseLessThen
as a comparator for the frame name map (_namedFrames), use
insert
instead of operator[] so that the first inserted named frame
is not
replaced by a subsequent one with the same name (case
insensitive).
3 passes in misc-ming.all, fixes bug #23327. Const-correct
some
iterators.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6690&r2=1.6691
http://cvs.savannah.gnu.org/viewcvs/gnash/server/parser/movie_def_impl.cpp?cvsroot=gnash&r1=1.107&r2=1.108
http://cvs.savannah.gnu.org/viewcvs/gnash/server/parser/movie_def_impl.h?cvsroot=gnash&r1=1.74&r2=1.75
http://cvs.savannah.gnu.org/viewcvs/gnash/server/parser/sprite_definition.cpp?cvsroot=gnash&r1=1.35&r2=1.36
http://cvs.savannah.gnu.org/viewcvs/gnash/server/parser/sprite_definition.h?cvsroot=gnash&r1=1.42&r2=1.43
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6690
retrieving revision 1.6691
diff -u -b -r1.6690 -r1.6691
--- ChangeLog 23 May 2008 13:18:37 -0000 1.6690
+++ ChangeLog 23 May 2008 15:21:25 -0000 1.6691
@@ -1,5 +1,15 @@
2008-05-23 Benjamin Wolsey <address@hidden>
+ * server/sprite_instance.{h,cpp},
+ server/parser/movie_def_impl.{h,cpp}: use StringNoCaseLessThen
+ as a comparator for the frame name map (_namedFrames), use insert
+ instead of operator[] so that the first inserted named frame is not
+ replaced by a subsequent one with the same name (case insensitive).
+ 3 passes in misc-ming.all, fixes bug #23327. Const-correct some
+ iterators.
+
+2008-05-23 Benjamin Wolsey <address@hidden>
+
* testsuite/misc-ming.all/frame_label_test.c: test for
case sensitivity.
Index: server/parser/movie_def_impl.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/parser/movie_def_impl.cpp,v
retrieving revision 1.107
retrieving revision 1.108
diff -u -b -r1.107 -r1.108
--- server/parser/movie_def_impl.cpp 15 May 2008 14:41:11 -0000 1.107
+++ server/parser/movie_def_impl.cpp 23 May 2008 15:21:27 -0000 1.108
@@ -47,6 +47,7 @@
#include <iomanip>
#include <memory>
#include <string>
+#include <algorithm> // std::make_pair
#include <unistd.h>
@@ -1027,15 +1028,15 @@
{
boost::mutex::scoped_lock lock1(_namedFramesMutex);
boost::mutex::scoped_lock lock2(_frames_loaded_mutex);
- //log_debug(_("labelframe: frame %d, name %s"), _frames_loaded,
n.c_str());
- _namedFrames[n] = _frames_loaded;
+
+ _namedFrames.insert(std::make_pair(n, _frames_loaded));
}
bool
movie_def_impl::get_labeled_frame(const std::string& label, size_t&
frame_number)
{
boost::mutex::scoped_lock lock(_namedFramesMutex);
- NamedFrameMap::iterator it = _namedFrames.find(label);
+ NamedFrameMap::const_iterator it = _namedFrames.find(label);
if ( it == _namedFrames.end() ) return false;
frame_number = it->second;
return true;
Index: server/parser/movie_def_impl.h
===================================================================
RCS file: /sources/gnash/gnash/server/parser/movie_def_impl.h,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -b -r1.74 -r1.75
--- server/parser/movie_def_impl.h 20 May 2008 11:40:41 -0000 1.74
+++ server/parser/movie_def_impl.h 23 May 2008 15:21:28 -0000 1.75
@@ -220,7 +220,7 @@
PlayListMap m_playlist;
/// 0-based frame #'s
- typedef std::map<std::string, size_t> NamedFrameMap;
+ typedef std::map<std::string, size_t, StringNoCaseLessThen>
NamedFrameMap;
NamedFrameMap _namedFrames;
// Mutex protecting access to _namedFrames
Index: server/parser/sprite_definition.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/parser/sprite_definition.cpp,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -b -r1.35 -r1.36
--- server/parser/sprite_definition.cpp 23 May 2008 07:33:26 -0000 1.35
+++ server/parser/sprite_definition.cpp 23 May 2008 15:21:28 -0000 1.36
@@ -172,14 +172,14 @@
// adjusted at the end of parsing.
//
//assert(m_loading_frame < m_frame_count);
- m_named_frames[name] = m_loading_frame;
+ _namedFrames.insert(std::make_pair(name, m_loading_frame));
}
bool
sprite_definition::get_labeled_frame(const std::string& label, size_t&
frame_number)
{
- NamedFrameMap::iterator it = m_named_frames.find(label);
- if ( it == m_named_frames.end() ) return false;
+ NamedFrameMap::const_iterator it = _namedFrames.find(label);
+ if ( it == _namedFrames.end() ) return false;
frame_number = it->second;
return true;
}
Index: server/parser/sprite_definition.h
===================================================================
RCS file: /sources/gnash/gnash/server/parser/sprite_definition.h,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- server/parser/sprite_definition.h 21 Apr 2008 11:27:46 -0000 1.42
+++ server/parser/sprite_definition.h 23 May 2008 15:21:28 -0000 1.43
@@ -22,11 +22,13 @@
#include <vector>
+#include <map>
#include "smart_ptr.h" // GNASH_USE_GC
#include "movie_definition.h"
#include "stream.h"
#include "log.h"
#include "rect.h"
+#include "StringPredicates.h" // StringNoCaseLessThen
namespace gnash
{
@@ -239,8 +241,8 @@
PlayListMap m_playlist;
// stores 0-based frame #'s
- typedef std::map<std::string, size_t> NamedFrameMap;
- NamedFrameMap m_named_frames;
+ typedef std::map<std::string, size_t, StringNoCaseLessThen>
NamedFrameMap;
+ NamedFrameMap _namedFrames;
size_t m_frame_count;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/parser/movie_def_impl.cp...,
Benjamin Wolsey <=