2008-03-04 Sandro Santilli <strk@keybit.net>

	* doc/C/Makefile.am: remove generated dox on 'make clean'
	  (not maintainer-clean). drop references to gnashuser.info
	  and gnashref.info (the official ones are gnash_user.info
	  and gnash_ref.info).

2008-03-04 Sandro Santilli <strk@keybit.net>

	* doc/C/Makefile.am: don't distribute a second copy of
	  preformatted .info, .html and man files, all preformatted
	  copies are already in the preformatted/ subdir.

2008-03-04 Sandro Santilli <strk@keybit.net>

	* doc/C/Makefile.am: Preformatted html files don't have
	  the embedded underscore..

2008-03-04 Sandro Santilli <strk@keybit.net>

	* Makefile.am: --with-plugindir was deprecated in favor
	  of --with-npapi-plugindir. Update distcheck flags.
	* doc/C/Makefile.am: explicitly list file to distribute.
	  Adding a dir to EXTRA_DIST wasn't working, and is discouraged:
	  http://www.delorie.com/gnu/docs/automake/automake_91.html

2008-03-04 Sandro Santilli <strk@keybit.net>

	* doc/C/Makefile.am: add a trailing slash on dirs added to
	  EXTDA_DIST. Fixes 'make dist' with automake 1.96.
	* configure.ac: this branch is 0.8.2 ...

2008-03-04 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: check arguments of drawing api
	  functions for being finite.
	* testsuite/misc-ming.all/DrawingApiTest.as: test passing
	  non-finite parameters to the drawing api.
	* backend/: render_handler_agg.cpp, render_handler_ogl.cpp:
	  Revert Bastiaan patch casting to int, the problem is in 
	  the drawing api.

2008-03-04 Sandro Santilli <strk@keybit.net>

	* doc/C/bugreport.xml, doc/C/doc_authors.xml, doc/C/gnashref.xml,
	  doc/C/gnashuser.xml, doc/C/introduction.xml, doc/C/security.xml,
	  doc/C/usermanual/gnashrc.xml: Add missing files. distcheck
	  works again.

2008-03-03 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_{agg,ogl}.cpp: Wallpaper over bug #22462:
	- (NaN coordinates fed to renderer).

2008-03-03  Rob Savoye  <rob@ripple.welcomehome.org>

	* Makefile.am: Add packaging files to EXTRA_DIST. Drop the
	dist-hook.
	* packaging/debian: Minor changes to start working with HEAD.
	* packaging/deb.am: Copy the debian packaging files from the
	source tree to the snapshot directory do dpkg-buildpackage can
	find them.
	* packaging/redhat/gnash.spec: Update for current layout.
	* configure.ac: Add a --disable-testsuite option for package
	builders. This spends builds up, and we already tested Gnash
	before packaging, right ?
	* Makefile.am: Always include testsuite directory, but don't add it
	to SUBDIRS. Install the packaging files.
	* doc/C/Makefile.am: Add some extra dependencies to keep distcheck
	happy.
	* testsuite/samples/Makefile.am: Add AGG_LIBS.
	* doc/C/Makefile.am: Tweak how images get installed so distcheck
	is happy.
	* po/fi.po: Finish translation by Timo Jyrinki.
	* po/Makefile.am: Build finish translation.
	* doc/C/preformatted: Update.
	* doc/C/Makefile.am: Furthur tweaking of the .xml.texi rule so it
	works with versions to correctly produce both info files. On
	Fedora, it kept only creating gnash_user.info. Fix install rule to
	deal with multiple versions of install-info. Add --dir-file= when
	removing entries.
	* doc/C/refmanual/internals.xml: Use <emphasis> instead of <code>,
	as <code> doesn't appear to be supported on Fedora.
	* doc/C/refmanual/extensions/extensions.xml: Use <emphasis>
	instead of <code>, as <code> doesn't appear to be supported on
	Fedora.
	* doc/C/Makefile.am: For the perl based version of the docbook
	tools, pipe directly through makeinfo to avoid file name
	transformation problems.
	* doc/C/Makefile.am: Print warning when linking to preformatted
	versions that they may be out of date. Change path to preformatted
	versions.
	* packaging/doc: Moved to doc/C/preformatted.
	* doc/C/preformatted: Moved from packaging/doc, this location
	makes more sense, and is simpler.
	* doc/C/usermanual.bugreport.xml: Move file up one directory so it
	can be shared.
	* doc/C/usermanual/glossary.xml, gnashrc.xml, installation.xml,
	usage.xml: Cleanup bad internal links. Drop "colspec" from tables
	as it causes too many warnings, hiding other problems.
	* doc/C/refmanual/building.xml, code_dependencies.xml,
	configuration.xml, custompath_configuration.xml,
	documentation_dependencies.xml, feature_configuration.xml,
	install.xml, internals.xml, testing_dependencies.xml: Cleanup bad
	internal links. Drop "colspec" from tables as it causes too many
	warnings, hiding other problems.
	* doc/C/gnashuser.xml: Change path to bugreport.
	* doc/C/gnashref.xml: Include bugreport.
	* doc/C/Makefile.am: Tweak dependencies more to deal with all the
	weird variations of docbook utils and docbook2X between platforms.
	* packaging/deb.am: Add snapshot-deb target.
	* testsuite/misc-ming.all/Makefile.am: Add BOOST_CFLAGS for older
	compilers.
	* doc/C/refmanual/logging.xml: Add new log_*() functions. Mark C++
	streaming API as discouraged.
	* doc/C/Makefile.am: Add extra dependencies for the gnash
	reference manual, now that it's back to life.
	* doc/C/appendix.xml: Don't include RTMP chapter here.
	* doc/C/refmanual/codestyle.xml: Don't include RTMP chapter
	here. Drop useless opcode section.
	* doc/C/gnashref.xml: Rearrange top level chapters.
	* doc/C/refmanual/configuration.xml: Don't include featureoptions
	or custompath here anymore.
	* doc/C/refmanual/internals.xml: Update to match reality. Add new
	utilities.
	* doc/C/refmanual/new_as_class.xml: Include asvaluie section here
	too.
	* doc/C/refmanual/building.xml, code_dependencies.xml,
	configuration.xml, cross_compiling.xml,
	custompath_configuration.xml, documentation_dependencies.xml,
	feature_configuration.xml, testing_dependencies.xml: Updated to
	match reality.
	* doc/C/refmanual/new_as_class.xml: changes to a chapter. Merge
	main.xml into body. Include as_value.xml from here.
	* doc/C/refmanual/as_value.xml: Make a sect1 for new_as_class.
	* doc/C/Makefile.am: Tweak dependencies for the info files, as
	they go through a name transformation, which is unfortunately
	different between Ubuntu and Fedora. Additional tweaks for Ubuntu
	Hardy, the .texi names don't get transformed during this step for
	this version of the docbook tools.
	* doc/C/Makefile.am: Link to the preformatted info file, which is
	messy because of the name transformation.
	* configure.ac: Always Define Docbook Conditionals or make fails.
	* packaging/gnash_ref.info.in, gnash_user.info.in,
	gnashuser.html.in gnashuser.ref.in: Preformatted versions of the docs.
	* doc/C/usermanual/usage, installation, actionscript: Move to
	reference manual. 
	* macros/docbook.m4: Look for install-info program too, which we
	need to add entries to the system wide info 'dirs' file.
	* doc/C/gnashref.xml: New reference manual top level page.  This
	contains much of what was in the old manual.
	* asspec/*: Move to BackLash directory.
	* doc/C/Makefile.am: don't list asspec files. Add directory for
	installing html file. Add separate variables for the user manual
	and the reference manual. Get rid of the useless
	entities. variable. Drop include xmlmake and omfmake, fix tghe
	rules and move them to the main Makefile. Fix info target so they
	actually build correctly, and install in the dirs file. Install
	and uninstall all the docs produced. Comment out GNOME help
	support for now. 
	* doc/omf.make, xmldocs.make: Don't use anymore.
	* doc/C/usermanual: Rewritten. 
	* usermanual/introduction.xml, /doc_authors.xml: Moved up one
	directory so it can be shared with the reference manual.
	* doc/C/usermanual/gtkext.xml, internals.xml, logging.xml, 
	mysqlext.xml, object.xml, opcodes.xml, plugin.xml, rtmp.xml,
	sources.xml: Move to reference manual.
	* doc/C/refmanual/amf.xml, internals.xml, memory.xml, plugin.xml,
	sources.xml, as_value.xml, logging.xml, new_as_class.xml,
	revisions.xml, codestyle.xml, main.xml, object.xml, rtmp.xml:
	Moved from the user manual and top level.
	* doc/C/asspec/*: All files moved to BackLash directory.
	* doc/backLash/accessibility.xml, array.xml, asspec.xml,
	boolean.xml, button.xml, camera.xml, color.xml, contextmenu.xml,
	customactions.xml, date.xml, error.xml, fdl-appendix.xml,
	function.xml, key.xml, legal.xml, loadvars.xml,
	localconnection.xml, math.xml, microphone.xml, mouse.xml,
	movieclip.xml, moviecliploader.xml, netconnection.xml,
	netstream.xml, number.xml, selection.xml,
	sharedobject.xml,sound.xml, stage.xml, string.xml, system.xml,
	textfield.xml, textformat.xml, textsnapshot.xml, video.xml,
	xml.xml, xmlnode.xml, xmlsocket.xml: Move from asspec directory.

2008-03-03 Sandro Santilli <strk@keybit.net>

	* server/parser/sprite_definition.{cpp,h}: delegate
	  exports and dictionary chars to containing movie
	  definition. Fixes bug #22468.
	* server/swf/tag_loaders.cpp: log malformed SWF for
	  export tags inside define sprite.

2008-03-03 Timo Jyrinki <timo.jyrinki@iki.fi>

	* gui/gnash.cpp, utilities/: dumpshm.cpp,
	  processor.cpp, soldumper.cpp:
	  Use LC_ALL, not just LC_MESSAGES for localization.
	  Fixes bug #22465.

2008-03-03 Sandro Santilli <strk@keybit.net>

	* po/: Makefile.am, fi.po: back-port finnish translation addition.

2008-03-03 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (doMouseDrag): drag bounds are in local
	  coordinate space, and non lock-centered drags must always
	  honour it. Fixes bug #22460.
	* server/vm/ASHandlers.cpp (CommonGetURL): implement GET/POST
	  methods for targetted movie loads. Still missing POST using
	  host-provided uri handler (to improve/define communication
	  protocol for it) and POST for loadVariables.

2008-02-29 Sandro Santilli <strk@keybit.net>

	* gui/Makefile.am: distribute klash.moc.in.

2008-02-28 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.{cpp,h}: fix build and runtime
	  with --disable-media.

2008-02-28 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/installation/feature_configuration.xml: update the
	  default media configuration.
	* configure.ac: pretend --enable-media=gst was given by default, so we
	  don't fallback on ffmpeg, being still unstable.

2008-02-28 Sandro Santilli <strk@keybit.net>

 	* server/sprite_instance.cpp (stagePlacementCallback): don't queue
	  a LOAD event for the root movie for SWF versions up to 5.
	* testsuite/swfdec/PASSING: root-onload-5.swf succeeds.

2008-02-28 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: sync to swfdec master git.

2008-02-28 Sandro Santilli <strk@keybit.net>

	* configure.ac: never attempt to use libmad, fallback to ffmpeg if
	  gstreamer is not supported and not explicitly requested.
	* doc/C/usermanual/: glossary.xml, installation/configuration.xml,
	  installation/feature_configuration.xml: update dox about
	  --enable-media and mad.

2008-02-28 Sandro Santilli <strk@keybit.net>

	* server/Property.{cpp,h}: drop left over debugging calls.

2008-02-27 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/gstflvdemux.h: Make extra sure our own FLV demuxer is
	loaded in favor of a potentially system-installed one.

2008-02-27 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/Makefile.am: Remove MediaDecoder* from the build, since
	they are unused and unmaintained.
	* libmedia/VideoDecoder.h: Revise the VideoDecoder interface, closely
	modeled after that of VideoDecoderGst.
	* libmedia/ffmpeg/VideoDecoderFfmpeg.{cpp,h}: Implement the new
	VideoDecoder interface. This fixes embedded video.
	* libmedia/gst/VideoDecoderGst.{cpp,h}: Update VideoDecoderGst to
	match the new VideoDecoder interface.
	* libmedia/ffmpeg/VideoDecoderFfmpeg.{cpp,h}: Cleanup; remove unused
	methods and code. Avoid unnecessary memcpy calls. Tabs to spaces.
	Fix up convertRGB24 so that it no longer touches the source frame
	and enforce that with constness.
	* server/parser/video_stream_def.{cpp,h}: Mutex-protect the video
	frames vector, because video_stream_def's methods are called from
	both the "loading thread" (parser) and the main execution thread
	(rendering). Remove Gstreamer-specific calls and get rid of #ifdefs.
	* server/asobj/NetStreamFfmpeg.cpp: Update to match the changes to
	convertRGB24.

2008-02-27 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: prototype-addProperty-6.swf
	  succeeds now.
	* server/Property.{cpp,h}: don't go into an infinite loop
	  if a getter or setter gets or sets the member it targets.
	  Fixes bug #22420.
	* testsuite/actionscript.all/Object.as: add test for recursive
	  getter/setter. Gnash fails at NOT protecting from infinite
	  recursion non-trival call graphs in SWF7+ (but is compatible
	  with SWF6 in that reguard).

2008-02-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/config.cpp: drop unused file.
	* libbase/Makefile.am: drop config.cpp.

2008-02-27 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.cpp: don't force verbosity, the config file can
	  be used for that.

2008-02-27 Marcin Cieślak <saper@saper.info>

	* plugin/plugin.cpp: GIOCondition is a bitfield. Patch #6436.

2008-02-25 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (sound_stream_head_loader): turn that
	  annoying "No samples advertised" error to a debugging message.
	  Whoever will take care of that will do it in head.
	* configure.ac: don't complain if high-level scripts for doc
	  generations aren't available as long as lower-level ones are.
	  Fixes bug reported in comment #12 of bug #22343.
	* testsuite/libamf.all/test_lc.cpp: don't assume (void*) is 32-bit,
	  remove unneeded casts, fix missing return warnings. Should fix bug
	  #22378.
	* libmedia/sdl: removed unused code.

2008-02-24 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/character.cpp: make sure all static const data members
	  are defined outside the class declaration.

2008-02-23 Sean McNamara <smcnam@gmail.com>

	* server/asob/SoundGst.cpp: Use the new GstUtil for obtaining an
	audio sink.

2008-02-22 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* po/Makefile.am: add Swedish translation.
	
2008-02-22 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/VideoDecoderGst.cpp: Be more verbose about a missing
	gstreamer-ffmpeg.

2008-02-22 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.cpp: don't use log_debug for test
	  results, or they might never come out.

2008-02-22 Markus Gothe <nietzsche@lysator.liu.se>

	* gui/gnash.cpp: Changed 2007 -> 2008.

2008-02-22 Sandro Santilli <strk@keybit.net>

	* extensions/fileio/Makefile.am: don't try to build the
	  test if deps are not met (Ming).
	* libmedia/Makefile.am: we don't support libmad anymore.

2008-02-22 Hong Yu <hongyu@emsoftltd.com>

	* configure.ac, gui/Makefile.am, libmedia/Makefile.am,
	  libmedia/sound_handler.h, libmedia/ffmpeg/AudioDecoderFfmpeg.cpp,
	  libmedia/ffmpeg/AudioDecoderFfmpeg.h,
	  libmedia/ffmpeg/VideoDecoderFfmpeg.cpp,
	  libmedia/ffmpeg/VideoDecoderFfmpeg.h,
	  libmedia/ffmpeg/ffmpegNetStreamUtil.cpp,
	  libmedia/ffmpeg/ffmpegNetStreamUtil.h,
	  libmedia/ffmpeg/sound_handler_sdl.cpp,
	  libmedia/ffmpeg/sound_handler_sdl.h,
	  po/Makefile.am, pythonmodule/Makefile.am,
	  server/Makefile.am, server/asobj/Makefile.am,
	  server/asobj/NetConnection.cpp, server/asobj/NetConnection.h,
	  server/asobj/NetStreamFfmpeg.cpp, server/asobj/NetStreamFfmpeg.h,
	  server/parser/Makefile.am, server/parser/video_stream_def.cpp,
	  server/parser/video_stream_def.h, server/vm/Makefile.am,
	  utilities/Makefile.am:
	  Re-enable ffmpeg backend option.

2008-02-22 Sandro Santilli <strk@keybit.net>

	* cygnal/cygnal.cpp: don't call LogFile::openLog explicitly,
	  it should be done automatically now.
	* libbase/log.{cpp,h}: don't open a log file if not needed
	  (open on demand).

2008-02-22  Rob Savoye  <rob@ute.welcomehome.org>

	* libamf/amf.cpp: Eliminate warnings.
	* libamf/lcshm.cpp: Delete[] tmp, not ptr. Return ptr.

2008-02-21  Rob Savoye  <rob@ute.welcomehome.org>

	* macros/docbook.m4: Don't use the POSIX shell wrappers for the
	Docbook2X utilities, only use the perl versions. If we can't find
	usable wrappers, then drop back to using the lower level tools
	like we used to.

2008-02-22 Sandro Santilli <strk@keybit.net>

	* testsuite/libamf.all/test_sol.cpp: use getSOLSafeDir for writing
	  SOL files.
	* Makefile.am: don't list 'doc' subdir twice in DIST_SUBDIRS.

2008-02-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/Makefile.am: drop unneeded references
	  to the Dejagnu.swf file.
	* Makefile.am, configure.ac, packaging/Makefile.am,
	  packaging/debian/Makefile.am, packaging/doc/Makefile.am,
	  packaging/ipkg/Makefile.am, packaging/redhat/Makefile.am:
	  fine-tune Makefile.ams, gets distcheck a further.

2008-02-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/gstflvparse.c: Always send a GstMessage when a function
	is encountered (not just for onMetaData). Store the function name in a
	special tag.
	* server/asobj/NetStream.{cpp,h}: Change onMetaData to be generic for
	any function called from an FLV.
	* server/asobj/NetStreamGst.cpp: Parse out the function name and call
	processNotify with the remainder of the tag.

2008-02-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: don't try to build
	  PrototypeEventListenersTest.swf if Ming version doesn't support it.
	* configure.ac: set version to 0.8.2
	* po/{cs,de,es,fr,it}.po: update-po

2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* gui/gtk.cpp: Reinstate a call to prepDrawingArea that was removed by
	accident.

2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* libbase/rc.{cpp,h}: Add a configuration item for the gstreamer
	audiosink. It is possible to use a pipeline in the configuration
	option similar to gst-launch. Implementation by Sean McNamara
	<smcnam@gmail.com> (committed with some small modifications).
	* libmedia/gst/GstUtil.{cpp,h}: Static Gstreamer utility class.
	* libmedia/gst/SoundGst.cpp: Use the configuration audio output
	pipeline.
	* server/asobj/NetStreamGst.cpp: Likewise, and don't attempt to load
	the flvdemux element, since it's loaded statically.
	* libmedia/gst/gstflvdemux.c: Make sure that the element name doesn't
	conflict with an existing flvdemux.
	* libmedia/gst/gnash_gst_version.h: Utility macros for dealing with
	Gstreamer versions. Unused for now.

2008-02-20 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (CommonGetUrl): revert the
	  loadVariables/targetLoad flags handling, as it broke
	  uptoten.com. Will do better research after release..

2008-02-20 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionImplementsOp): better logging,
	  catch bogus opcodes.
	* server/vm/ASHandlers.cpp (CommonGetUrl): only loadVariables if
	  targetLoad flag is set (tested). Log an SWF error if loadVariables
	  is set but targtLoad is clear.

2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/parser/video_stream_def.cpp: Don't make a fuss about embedded
	video definitions without a real codec or video data, because they are
	frequently (or perhaps always) used as to place NetStream videos on 
	the stage.

2008-02-20 Sandro Santilli <strk@keybit.net>

	* server/: gnash.h, impl.cpp: add an additional optional
	  argument to create_movie and create_library_movie to
	  post data.
	* server/movie_root.{cpp,h}: change loadMovie interface to
	  take an optional POST data string.
	* server/sprite_instance.{cpp,h}: extend ::loadMovie to 
	  take an aptional POST data string, fix MovieClip.loadMovie
	  to honour second argument [GET/POST].

2008-02-20  Rob Savoye  <rob@ripple.welcomehome.org>

	* testsuite/libamf.all/test_lc.cpp: Don't try a bogus test for
	findListeners() for now. The code works, but the test case is
	broken.

	* configure.ac: Don't build C/asspec/Makefile, it's never been
	used anyway. Use new variables for testing if paths were found.

2008-02-20 Sandro Santilli <strk@keybit.net>

	* doc/C/gnash.xml, doc/C/usermanual/installation/configuration.xml:
	  docbook2texi complained about an underscore in an entity name,
	  so renamed 'cross_compiling' to 'crosscompiling'.

2008-02-20 Sandro Santilli <strk@keybit.net>

	* doc/C/fdl-appendix.xml: in DocBook 4.0, docinfo tag was
	  replaced with appendixinfo (in an appendix context).
	  See
	  http://www.museum.state.il.us/ismdepts/library/linuxguides/docbook/docinfo.html.
	* doc/C/app_authors.xml: copy 'Ignacio Casta�o' name from
	  gameswf sources (seems to be better accepted by docbook2pdf). 
	* doc/C/amf.xml, doc/C/rtmp.xml: use appropriate sect levels
	  matching with inclusion of entities.
	* doc/C/usermanual/usage.xml: fix mismatch in <row> tag nesting.

2008-02-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/log.{cpp,h}: General cleanup: pass strings by const
	  reference. Drop overloaded operators for LogFile class in favour
	  of the template that was already there. Remove unused Verbose class.
	  Comment out apparently unused but possible useful methods 
	  getEntry() and getState(). Drop unused variables. Write the same
	  to stdout as to logfile; move filtering of debug messages to the
	  logging functions. Add but comment out new boost::format logging
	  functions.

2008-02-19  Rob Savoye  <rob@ute.welcomehome.org>

	* doc/C/gnash.xml: Beat back into a semblance of shape. Still
	needs massive work, but at least the chapters are in order.

2008-02-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/log.{h,cpp}: drop log_msg.
	* everywhere: replace unspecific log_msg with appropriate log call;
	  mainly log_debug but occasionally error, parse or security.

2008-02-19  Rob Savoye  <rob@ripple.welcomehome.org>

	* doc/C/Makefile.am: Use newer wrappers for docbook2x tools
	instead of the old two step process.
	* macros/docbook.m4: Look for alternate names for docbook
	utlities. Find docbook2pdf. Fix automake conditionals.

2008-02-19  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/docbook.m4: Look for the scripts with a .pl extension if
	they aren't found, as Gentoo renamed these programs.

	* doc/C/Makefile.am: Build Cygnal man page too.

2008-02-19 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/gen_run_swfdec_testsuite.sh: fix sending of
	  custom flags to swfdec_gnash_tester.
	* testsuite/swfdec/swfdec_gnash_tester: print actual command
	  invocation to stderr.
	* testsuite/simple.exp: reset the timeout on parsing NOTE or
	  swfdec testsuite will run longer then 600 seconds..
	* testsuite/swfdec/REALTIME: add netstream-onmetadata.swf

2008-02-19 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: add optional second argument
	  to doubleToString static method, to specify a base
	  (defaults to 10).
	* server/asobj/Number.cpp: implement Number.toString(<radix>).
	* testsuite/actionscript.all/Number.as: successes.
	* testsuite/swfdec/PASSING: successes.

2008-02-19 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Number.as: add test for toString(<radix>)

2008-02-19 Sandro Santilli <strk@keybit.net>

	* server/asobj/Number.cpp: log UNIMPLEMENTED for
	  Number.toString(<radix>)
	* server/asobj/xml.{cpp,h}: fix getBytesLoaded/Total to return
	  undefined when nothing was loaded (reguardless of the .loaded
	  property setting).
	* libbase/rc.{cpp,h}: return as soon as directive matches
	  pattern while parsing 'set' lines.
	* testsuite/libamf.all/Makefile.am: set GNASHRC to use
	  testsuite-specific configuration.

2008-02-18  Rob Savoye  <rob@ute.welcomehome.org>

	* doc/glossary.xml: Add id tags to all glossdivs.
	
	* doc/C/cygnal-man.xml: New manpage for Cygnal.
	* doc/C/Makefile.am: Build Cygnal manpage too.

2008-02-19 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp: don't remove the logfile if not enabled.
	* gui/gnash.cpp: set write log to rcfile, not directly on the
	  LogFile (handling of -w). This is to cope with Player class
	  way of initializing log file.
	* libbase/rc.cpp: don't use log_XXX during construction, as
	  those will need a constructed RcInitFile to work properly.
	* libbase/log.cpp: get "write log" option from RcFile.
	  Fixes forced logfile writing from gprocessor, and should
	  make Player handling of the flag obsoleted.

2008-02-18 Sandro Santilli <strk@keybit.net>

	* testsuite/gnashrc.in: disable writing to the logfile..
	* server/asobj/xml.{cpp,h}: better compatibility:
	  return undefined from XML.getBytesTotal() when not
	  loading, return last-load info when load ends.

2008-02-18 Sandro Santilli <strk@keybit.net>

	* libbase/LoadThread.cpp: update _streamSize on eof, as the
	  http-advertised stream size can't be relied upon.

2008-02-18 Russ Nelson <nelson@crynwr.com>

        * libmedia/gst/VideoDecoderGst.cpp
	* When a movie is going to stream video, it creates DEFINEVIDEOSTREAM
	  with a codec id of zero.  That currently generates an ERROR when it
	  only means that the real video will be streamed later.  Instead, 
	  we'll just log it.
	* Change the wording to make it clear that it's codec #0, send it
          to log_debug(), and nuke the pipeline.

2008-02-18 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.cpp (readDefineVideoStream): fix
	  ensureBytes call [was 1 byte short].
	* server/asobj/xml.{cpp,h}: second attempt at XML.sendAndLoad.
	  This time is a bit more tested.

2008-02-17 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.{cpp,h}: implement XML.sendAndLoad (untested).
	  See bug #22334.

2008-02-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: add mnemonics to menu bar for accessibility.
	* po/gnash.pot: updated pot file.
	* po/de.po: updated translation.

2008-02-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/stream.cpp: throw parser exception if asked to read more than
	  32 bits, assert only to prevent buffer overflow. Fixes bug #22319.

2008-02-16  Rob Savoye  <rob@ripple.welcomehome.org>

	* gui/Makefile.am: Add GLIB_CFLAGS. Install shell with
	INSTALL_DATA.
	* gui/am-frag/gtk.am: Include X11_CFLAGS to keep NetBSD happy.
	* pugin/Makefile.am: Include X11_CFLAGS to keep NetBSD happy.
	* plugin/klash/Makefile.am: Include X11_CFLAGS to keep NetBSD
	happy.
	* gui/gnash.in: Update copyright.
	
	* macros/boost.m4: The serialization is optional, not required. 
	* macros/pthread.m4: Match all BSD hosts when setting flags.

	* Makefile.am: Always recurse into doc.

	* doc/C/Makefile.am: Fix typo, one $ not two for make
	variables. Link to directories if we're in a build tree so
	including images and other xml pages actually works. Link to
	default output files if the Docbook tools aren't installed.
	* doc/C/dumpshm-man.xml, gnash-man.xml, gprocessor-man.xml,
	soldumper-man.xml: Remove old names, their suffix has changed to
	.man-xml.

	* server/edit_text_character.h, character.h: Put virtual before
	the return type to eliminate a warning,
	* packaging/install-gnash.sh: Drop GPL part, make uninstall work
	correctly. Fix install path to use /usr/lib so we don't have to
	hack ld.so.conf.

	* packaging/snapshot.am: Set the name higher up so we don't have
	to add "cvs" everywhere for the snapshot version. Build the
	tarball with the correct path. Don't bail om some errors, they're
	normal on some platforms. Add host_os to the tarball name.

	* doc/C/dumpshm-man.xml, gprocessor-man.xml, soldumper-man.xml,
	gnash-man.xml: Rename all man page source to *.man-xml so we can
	use a SUFFIX rule for transformations.
	* doc/C/Makefile.am: Build manpages using a SUFFIX rule. Cleanup
	how manpages get installed so it works when building packages.
	* packaging/doc: New directory to hold prebuilt docs for packaging
	on braindead systems without a working Docbook2X.
	actionscript.html.in
	* packaging/doc/actionscript.info.in, dumpshm.1.in, gnash.1.in,
	gnash.html.in, gnash.info.in, gprocessor.1.in, soldumper.1.in:
	Prebuilt docs, only used for building binary packages on systems
	without Docbook2X support.

2008-02-16 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionInitArray): use as_value::to_int
	  to get array size. Fixes bug #22318.

2008-02-16 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/: README, REALTIME,
	  gen_run_swfdec_testsuite.sh, swfdec_gnash_tester:
	  Add support for running certain testcases at
	  nominal FPS speed, to make test results more stable.

2008-02-15 Sandro Santilli <strk@keybit.net>

	* libbase/URL.cpp: rewrite parse_querystring using
	  boost::tokenizer, fixing the new test.
	* testsuite/libbase/URLTest.cpp: new tests fixed.

2008-02-15  Rob Savoye  <rob@ripple.welcomehome.org>

	* doc/C/Makefile.am: If the docbook tools don't exist.use a stored
	copy of the final output file. While this is a bit tacky, it helps
	when building binary packages on systems where the DocBook tools
	don't work correctly. Potentially old docs are better than none.
	* doc/C/{dumpshm.1,gnash.info, soldumper.1, actionscript.html,
	gnash.1, gnash.texi, actionscript.texi, gnash.html.in
	gprocessor.1: Copies of prebuilt documentation. This gives one
	working documentaion regalrdless of whether they have the Docbook
	tools installs. Useful for building binary packages.

	* macros/glib.m4: Add extra glib for include path, and drop the
	extra glib for the glibconfig.h include path. This let's Gnash
	build on NetBSD 4.0.
	* server/as_value.cpp: Use finite if isfinite doesn't exist. Fixes
	FreeBSD build problem.
	* libbase/FLVParser.cpp:  Include string and iofwd, and add std
	namespace to fix generic BSD build problem.

2008-02-15 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/button_character_def.cpp: use ensureBytes, fix more
	  assertion failures.

2008-02-15 Sandro Santilli <strk@keybit.net>

	* testsuite/libbase/URLTest.cpp: failing test for url-decoding.
	* server/as_object.{cpp,h}: add getURLEncodedVariables method.
	* server/sprite_instance.cpp (loadVariables): delegate vars
	  url-encoding to the new specialized method.

2008-02-15 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/swf/tag_loaders.cpp: (define_bits_lossless_2_loader) log
	  malformed SWF error and return if height or width is 0 (prevents
	  assertion failure in image.cpp (rgba).
	* server/swf/PlaceObject2Tag.cpp: use ensureBytes, fix more assertion
	  failures on malformed SWFs.
	* server/parser/text_character_def.cpp: add a missing ensureBytes.

2008-02-15 Sandro Santilli <strk@keybit.net>

	* server/parser/sprite_definition.cpp: handle END tags before
	  advertised end offset of a DEFINESPRITE tag.

2008-02-15 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/swfdec_gnash_tester: accept a second argument
	  to specify additional flags. Currently unused by might get
	  handy to augment sleep time for some load to be more likely
	  to complete in time.
	* utilities/processor.cpp: don't forget to sleep between stage
	  placement and first advance. Fixes instable results with
	  swfdec's loadvariable* testcases.

2008-02-14 Sandro Santilli <strk@keybit.net>

	* server/asobj/MovieClipLoader.cpp (loadClip): fetch bytes
	  loaded/total from the loaded clip, not the replaced one.
	* server/as_value.cpp (to_string): movieclips oughta evaluate
	  to the empty string only if dangling and not rebound.
	* testsuite/actionscript.all/MovieClipLoader.as: test that rebound
	  soft refs convert to non-empty string.

2008-02-14 Sandro Santilli <strk@keybit.net>

	* server/parser/BitmapMovieDefinition.h: advertise one frame loaded,
	  fixes last failure in loadMovieTest.swf.
	* server/sprite_instance.cpp (loadMovie): copy clip-events to loaded
	  movie. Fixes loadMovieTest.swf.
	* testsuite/misc-ming.all/: loadMovieTest.c, loadMovieTestRunner.cpp:
	  Test that clip event handlers defined for a clip are copied to
	  movies loaded into them. Improve the test runner to follow
	  instructions of the self-contained one and add consistency checking
	  (failing with Gnash, I'm working to fix it).


2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/stream.cpp: also check for overflow of a signed int to keep
	  tu_file happy.

2008-02-14 Sandro Santilli <strk@keybit.net>

	* server/parser/BitmapMovieDefinition.{cpp,h}:
	  Implement getBytesLoaded/getBytesTotal for loaded bitmaps
	  (not 100% correct but fixing real-world movies).
	  Fixes:
	  http://www.veritaserum.com/flashgames/jp/puzzledharry/puzzled-harry.swf

2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/stream.cpp: throw parser exception in stream::open_tag() if
	  reported tag length is negative. Fixes assertion failures in
	  zlib adapter.

2008-02-14  Rob Savoye  <rob@ripple.welcomehome.org>

	* utilities/dumpshm.cpp: Use struct shmid_ds instead of the
	depreciated shminfo, so this works on *BSD.

2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk{sup.h,.cpp}: set up key event callbacks on the toplevel
	  window after drawing area has been reparented. The new
	  setupWindowEvents() function splits off those functions to save
	  resetting other callbacks unnecessarily. Makes key events
	  work in the fullscreen plugin.
	* server/asobj/xml.{cpp,h}: fix small leak of xmlChar when the node
	  is empty. Replace reinterpret_cast<>s with nice, safe, null-terminated
	  stringstreams. Comment out some questionable headers.

2008-02-14 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (on_event): reword the onLoad handling so
	  that sprites with a registered class won't skip the user-defined
	  handler. Fixes the new tests in registerClassTest2.c and one of the
	  bugs exposed by FlowPlayer.
	* testsuite/misc-ming.all/registerClassTest2.c: expect failures in
	  order of execution of the onLoad handlers (this might be the reason
	  for the overly complex handling of onLoad handler in current gnash).

2008-02-14 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/registerClassTest2.c: test that user-defined
	  onLoad handler is still invoked if no clip events are defined and
	  the object is not dynamic (placed by onClipEvent).

2008-02-14 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (on_event): still look for a user-defined
	  onLoad handler if the sprite is dynamic. Fixes latest testcase, but
	  not FlowPlayer yet (which was the inspiration for the previous
	  test).
	* testsuite/misc-ming.all/registerClassTest.c: test that used-defined
	  onLoad should be called when available for dynamic clips placed
	  by attachMovie (even when 'clip' event flags are all zero..).

2008-02-13 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: always register as a key and mouse
	  listener, not relying on equipment of a known handler (as that would
	  miss prototype assignments).
	* testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp: fix
	  bogus check.

2008-02-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: enable test
	  PrototypeEventListenersTestRunner

2008-02-13 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/with.as: use ASM for setTarget in
	  with() blocks, or Ming 0.4.0.beta6 would consider it a function
	  call (as done by the official ide, so "correctly").
	* testsuite/actionscript.all/targetPath.as: AS targetPath doesn't
	  change in Ming 0.4.0.beta6, just the ASM label.

2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/misc-ming.all/PrototypeEventListeners.as: more tests.
	* testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp:
	  add tests.

2008-02-13 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/usage.xml: document the new -F switch of gnash.

2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/misc-ming.all/PrototypeEventListeners.as: a few more
	  tests.
	* testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp:
	  automatic test runner.
	* testsuite/misc-ming.all/Makefile.am: enable tests.

2008-02-13 Sandro Santilli <strk@keybit.net>

	* server/asobj/SharedObject.cpp: fix intermediate directories
	  creation, while still failing if the SOLSafeDir doesn't exist.
	  Fixes one of the bugs in #22013.

2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/misc-ming.all/PrototypeEventListeners.as: test mouse
	  events on MovieClip prototypes.

2008-02-13 Sandro Santilli <strk@keybit.net>

	* server/asobj/SharedObject.cpp (flush): check return code from
	  sol::writeFile.
	* libamf/sol.cpp (writeFile): check ostream operations.
	* testsuite/actionscript.all/SharedObject.as: add a few more tests
	  and expect the current failures.

2008-02-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: instanceNameTestRunner
	  is a _SCRIPT, not a _PROGRAM.

2008-02-12  Rob Savoye  <rob@ute.welcomehome.org>

	* plugin/klash/Makefile.am: Test permissions before trying to
	install. Install services from srcdir.

	*  packaging/debian/gnash-dev.dirs, gnash-dev.install: Don't build
	dev packages, Gnash's internal APIs change to fast.
	* packaging/debian/gnash-klash.install: Install kde-gnash, not
	klash.
	* packaging/debian/changelog: Update.
	* packaging/debian/control: Drop gnash-dev. 
	
	* utilities/Makefile.am: Add INTLLIB, and actually use
	AM_LDFLAGS.
	* utilities/dumpshm.cpp: Drop unused support for accessing POSIX
	memory as raw files. Normalize output so some things work without
	-v. Add --version option. Re move unused options left from prior
	project.
	* utilities/processor.cpp: Use printf instead of log_msg for
	--version so we can always see it.
	* utilities/soldumper.cpp: Add support for --help and --version
	per GNU standards. Use printf instead of log_msg for --version so
	we can always see it. Use cout instead of log_msg for all outout
	so we don't contaminate the main log file.
	
	* doc/C/dumpshm-man.xml, gprocessor-man.xml, soldumper-man.xml:
	New man pages for utilities.
	* doc/C/asspec/asspec.xml:  Update contact info and version.
	* doc/C/asspec/asspec-C.omf: Update contact info and version.
	* doc/C/asspec/Makefile.am: Add new manpages.
	* doc/C/gnash.xml: Update contact info and version.

2008-02-12 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: enable the new 
	  instanceNameTestRunner test.
	* server/sprite_instance.{cpp,h}: take a pointer to string in
	  add_display_object and replace_display_object, so that NULL gets
	  back to having a meaning.
	* server/swf/PlaceObject2Tag.{cpp,h}: pass NULL to add_display_object
	  and replace_display_object if a name wasn't specified by user.

2008-02-12 Sandro Santilli <strk@keybit.net>

	* testsuite/gnashrc.in: force sound enabled.

2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/character.h: take const std::string& for set_name. 
	* server/sprite_instance.{cpp,h}: use const std::string& instead of
	  const char* for display_object functions.
	* server/swf/tag_loaders.cpp: already no need to pass c strings to
	  export.
	* server/swf/PlaceObject2Tag.cpp: don't use c_str().

2008-02-12 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: Makefile.am, instanceNameTest.c:
	  Add a test showing that NO name is different then EMPTY name
	  in a PlaceObject tag (previous Ben's patch broke this).

2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/character.h: take const std::string& for set_name. 
	* server/sprite_instance.{cpp,h}: use const std::string& instead of
	  const char* for display_object functions.
	* server/swf/tag_loaders.cpp: already no need to pass c strings to
	  export.
	* server/swf/PlaceObject2Tag.cpp: don't use c_str().

2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/stream.{cpp,h}: drop buggy char* read_string()
	  and (unused) char* read_string_with_length(...), which sometimes
	  returned NULL causing a parser exception. Fixes parsing of 
	  http://www.e4.com/reaper/games/soulslapper/flas/main.swf (SWF9)
	  (to an extent).	  
	* server/swf/tag_loaders.cpp: use read_string (std::string& to)
	  everywhere.
	* server/swf/PlaceObject2Tag.{cpp,h}: use std::string, not char* for
	  m_name.
        * server/parser/shape_character_def.cpp: bring indentation into
          some sort of shape.

2008-02-12 Sandro Santilli <strk@keybit.net>

	* server/asobj/MovieClipLoader.cpp: send the onLoadInit event
	  at the correct time (after actions in first frame of loaded resource
	  were executed).

2008-02-12 Sandro Santilli <strk@keybit.net>

	* server/parser/button_character_def.{cpp,h}: properly parse button
	  records with filters and blend mode. Fixes bug #22094.

2008-02-12 Sandro Santilli <strk@keybit.net>

	* server/parser/button_character_def.cpp: print state info for
	  button records (debuggin).

2008-02-12 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Use the right scale for volume (0-1, not
	0-10).

2008-02-12 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: drop "invisible mask in MouseEntityFinder"
	  FIXME message (nothing to fix).

2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/shape_character_def.cpp: add some checks I missed last
	  time.

2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/shape_character_def.cpp: add ensureBytes/Bits checking
	  to fix assertion failures with malformed SWFs. Fixes bug #22288.

2008-02-12 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: use instance setting for
	  "readonly", not definition one. Allows dynamically-created
	  TextFields to be used as input ones.

2008-02-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/edit_text_character_def.cpp: use ensureBytes checking,
	  fixes some zzuf assertion failures.
	* server/parser/text_character_def.cpp: use ensureBytes checking.

2008-02-11 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/button_character_instance.cpp, server/edit_text_character.cpp,
	  server/sprite_instance.cpp, server/video_stream_instance.cpp,
	  server/character.h: drop XXX_display_callback methods
	* server/dlist.cpp: generally check characters bounds before calling it's
	  display() method
	* server/generic_character.cpp, server/edit_text_character.cpp, 
	  server/sprite_instance.cpp: don't check boundsInClippingArea() as it is
	  done in DisplayList now 

2008-02-11 Sandro Santilli <strk@keybit.net>

	* server/asobj/Stage.cpp: warn only once about unimplemented calls.

2008-02-11 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/character.{cpp,h}: new boundsInClippingArea() function
	* server/generic_character.{cpp,h}: move display() implementation to .cpp
	  file and add call to boundsInClippingArea()
	* server/edit_text_character.cpp: add call to boundsInClippingArea()
	* server/sprite_instance.cpp: remove clipping check using 
	  add_invalidated_bounds and do simple (single) bounds check instead   

2008-02-11 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClipLoader.as: test 'this' in
	  onLoadInit callback.

2008-02-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}: use boost/cstdint for uint32_t. Cast SHM key 
	  to key_t only at return. Use 'splashScreen', not splash_screen in
	  the rcfile for naming consistency. It's as yet unused, so shouldn't
	  cause any problems.
	* testsuite/libbase/gnashrc.in: change test to use splashScreen.	  

2008-02-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: Don't use is_muted() to set the 'Sound' menu toggle,
	  as the function seems to have changed.
	* libbase/rc.cpp: Fix a nice buffer overrun arising from long
	  comments in the rcfile.

2008-02-10 Bastiaan Jacques <bastiaan@bjacques.org>

	* libamf/sol.cpp: in writeFile, allocate enough space to account
	for two padding bytes, which are written depending on the AMF element
	type. Fixes bug #22188.

2008-02-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/sprite_instance.cpp, server/movie_root.cpp: const correct
	  some iterators.
	* server/asobj/LoadVars.cpp: ditto.
	* libbase/utf8.h: make comments more Doxygen-friendly.

2008-02-09  Rob Savoye  <rob@ripple.welcomehome.org>

	* configure.ac: Add a --enable-allstatic option to produced a
	dynamically linked Gnash, but with dependant librairies statically
	linked in. This reduces dependancy problems for binary tarballs,
	plus the plugins still build as shared libs still.
	* utilities/Makefile.am: Wrap our dependant libraries with
	--static and -shared to force static linking if --enable-allstatic
	is specified.
	* gui/Makefile.am: Wrap our dependant libraries with --static and
	-shared to force static linking if --enable-allstatic is
	specified.

	* packaging/install-gnash.sh: Install everything correctly.
	* packaging/snapshot.am: Fix rules to build binary tarballs
	correctly. Add snapshot-rpm target that builds an rpm which is
	properly cvs date stamped.
	* packaging/redhat/gnash.spec: Update to work with cvs HEAD.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/sound_handler.h: Add a few notes.
	* libmedia/gst/SoundHandlerGst.{h,cpp}: Make SoundHandlerGst thread
	safe, because the "loading thread" will call at least create_sound.
	Since most methods in the class merely call a SoundGst method,
	introduce a set of member template functions that will a) make these
	operations thread safe, b) replace the RV_IF_BAD_HANDLE-style macros
	and c) save typing. Fixes bug #22264.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Use mp3parse only if it's available,
	for instance in the absence of plugins-ugly.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Make sure source and sink pad
	actually reflect their names on the bin used for mp3parse.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Shuffle linking order so that
	volume will happen after conversion.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Disable the seeking assistant
	mp3parse module for now. Add a small amount of error output.

2008-02-09 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/loadMovieTest.c: check that
	  getBytesLoaded/Total for static sprites should not proxy
	  to the root movie def.
	* libmedia/gst/SoundHandlerGst.cpp (dtor): don't abort
	  if destructed before the VM is initialized (gnash nonexistent
	  will trigger that behaviour).

2008-02-08 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (setRootMovie): cleanup display list
	  after actions processing. Fixes bug #22258.
	* server/swf/tag_loaders.cpp (import_loader): read strings into
	  a std::string rather then a temp newly allocated char[].
	  (fixes attempts to construct a string from a null).

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundGst.cpp: Fix typo.

2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/SoundHandlerGst.{h,cpp}: New Gstreamer sound_handler
	implementation. Manages SoundGst objects.
	* libmedia/gst/SoundGst{h,cpp}: Sound class representing a single
	sound.
	* libmedia/gst/gstbuffersrc.{c,h}: Home-grown element derived from
	gstappsrc; it is a random-access element. Used for SoundGsts.
	* libmedia/AudioDecoderNellymoser.{cpp,h}: Add another decode()
	that returns floats, since Gstreamer can handle them.
	* libmedia/Makefile.am: Compile new files; stop compiling removed
	files.
	* libmedia/sound_handler.h: Drop unused (and evil)
	{att,de}tach_aux_streamer methods.
	* server/Makefile.am: Link in Gstreamer libs if requested.
	* server/asobj/NetStreamGst.cpp: Remove unused include.

2008-02-08 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/level87.as, testsuite/swfdec/PASSING:
	  Successes after the MovieClip.loadMovie fixes.

2008-02-08 Sandro Santilli <strk@keybit.net>

	* server/movie_root.h: add TODO item in loadMovie method.
	* server/sprite_instance.cpp (sprite_load_movie): queue the
	  load request using movie_root::loadMovie. Fixes a bug
	  loading in removed or aliased sprites (expected behaviour
	  is we load to a string target, with late evaluation of it).
	* server/asobj/: LoadVars.cpp, xml.cpp: don't forget to clear
	  the internal timer on destruction.

2008-02-08 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (on_event): skip seeking for user-defined
	  onLoad handler only if all all clip events (not just the onLoad one)
	  are undefined.

2008-02-07  Rob Savoye  <rob@ripple.welcomehome.org>

	* packaging/install-gnash.sh: Add file finding function, so we
	work correctly with the bug in Ubuntu's bash shell.

2008-02-07 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp: get default type (input/dynamic)
	  from definition (readonly flag).
	* server/parser/edit_text_character_def.h: be readonly by default,
	  statically defined textfield will always set this flag explicitly.
	* testsuite/misc-ming.all/DefineEditTextTest.c: test the 'type'
	  parameter of statically defined textfields.

2008-02-07 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: add support for
	  TextField.type
	* testsuite/actionscript.all/TextField.as: additional test
	  for TextField.type, fix a test for textWidth.

2008-02-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/utf8.h: document utf8 code.
	* server/edit_text_character.cpp: add comments, drop pointless
	  cast.  

2008-02-07 Sandro Santilli <strk@keybit.net>

	* server/asobj/LoadVars.cpp: fix confusing message (loading XML..)
	* server/array.h: sort a list, not a deque. this makes
	  invalid custom comparators less likely to invalidate
	  iterators, fixing bug #22239.
	* testsuite/actionscript.all/array.as: update expected
	  results.

2008-02-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/Key.{cpp,h}: clean up code. Take gnash::key::code when
	  that's what's meant; drop unnecessary assertions; use std::bitset
	  instead of custom bit array (this is C++, after all).	  

2008-02-07 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/array.as: make the test nicer with
	  differnent sort() implementation (ie: don't change number of
	  run tests based on number of calls to the custom comparator
	  function)
	* testsuite/actionscript.all/String.as: fix a bogus test line,
	  xcheck->check now succeeding tests, add the rcsid string.

2008-02-06  Rob Savoye  <rob@ripple.welcomehome.org>

	* packaging/install-gnash.sh: Add OpenBSD support, and hopefully
	other BSDs too.

	* configure.ac: Don't look for mkinstalldirs on our own, it's
	found by autoconf.

	* packaging/snapshot.am, alp.am, bsd.am, deb.am, ipkg.am, rpm.am:
	Makefile fragments moved out of the top level where it was getting
	too clutters with install abd packaging targets.
	* Makefile.am: Move all the packaging support to the .am files
	packaging. Include packaging in EXTRA_DIST.

	* packaging/install-gnash.sh: Install script for installting
	binary tarballs.
	* extensions/launcher: New extension for launching application
	from a swf file. Very handy for a swf basd UI for mobile devices
	that use graphical menus.
	* extensions/launcher/launcher.cpp: Launcher support, which uses
	an MD5 checksum to make sure it only launches the application
	that's compiled in.
	* extensions/launcher/launcher_ext.{cpp,h}: Wrappers for the
	Launcher AS class.
	* extensions/launcher/md5.{cpp,h}: md5 calculations.

2008-02-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/array.as: another insane test..

2008-02-06 Sandro Santilli <strk@keybit.net>

	* server/array.h (sort): sort a copy of elements when using a custom
	  function, to avoid the custom function invocations to mess with
	  the container being scanned. Fixes a memory corruption that was
	  triggered by just-added tests in array.as, but still doesn't fix
	  bug #22239 (must be another such case).

2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/utf8.{cpp,h}: take SWF version argument, use ISO-8859
	  encoding for SWF5 and below.
	* server/asobj/string.cpp: pass version information to utf encoding
	  functions.
	* server/edit_text_character.cpp: pass version information to encoding
	  functions.
	* server/vm/ASHandlers.cpp: pass version information, use ISO-8859
	  encoding for SWF5 and below. Restores SWF5's inability to cope with
	  UTF-8, passes swfdec testsuite again.

2008-02-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/array.as: add more crazy calls, in
	  particular one matching the problem reported on bug #22239
	  (blocker - working to fix this).

2008-02-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/array.as: add a couple of additional 
	  tests for sorting an array using a bogus custom function.
	* gui/kde.cpp, gui/kdesup.h: disable no-op movie control menu items
	  (jump,step forward,back); add Refresh menu item.
	* gui/sdl_agg_glue.cpp: fix compiler warnings
	* testsuite/swfdec/PASSING: string-indexof and stringlength
	  tests now succeed for swf > 5

2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/String.as: new failing tests for 
	  SWF5 string methods. Some chr() and ord() tests now pass.
	* server/vm/ASHandlers.cpp: SWF4 and 5 handle multi-byte characters
	  differently.
	* server/edit_text_character.cpp: use const reference.

2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/String.as: tests for chr() and
	  ord().

2008-02-06 Sandro Santilli <strk@keybit.net>

	* libbase/string_table.cpp (insert_group): only lowercase
	  the comparison key if case-insensitive.
	* server/namedStrings.{cpp,h}: drop PROP_COLOR named string
	  as it would clash with the CLASS_COLOR one in case-insensitive
	  runs. Fixes unstable evaluation of "color" labels.
	* server/textformat.cpp: don't use PROP_COLOR anymore (was dropped).

2008-02-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/case.as: add tests showing that
	  the current case-insensitive string_table comparison is
	  conceptually bogus (and probably the whole global string_table
	  is).

2008-02-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/case.as: use case-sensitive sorting
	  for predictable results (case-insensitive depends on unspecified
	  order of properties).

2008-02-05 Sandro Santilli <strk@keybit.net>

	* testsuite/server/PropertyListTest.cpp: re-enable the tests,
	  testing case-insensitive operations.
	* testsuite/generic-testrunner.sh: don't write a logfile in the
	  same dir of the testcase, use the builddir instead.

2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/string.cpp, server/vm/ASHandlers.cpp: convert strings
	  to wstring for string operations (length, slice, split, substr,
	  indexOf, fromCharCode, charCodeAt, charAt, ord, chr). Fixes
	  bug #21400.
	* testsuite/actionscript.all/String.as: tests should now pass.

2008-02-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/Makefile.am: distribute test sources.
	* testsuite/swfdec/PASSING: sync'd with master git

2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/String.as: add failing tests for
	  string methods on multi-byte characters.

2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/movie_root.cpp: send unique gnash::key::code not SWFCode
	  to event_id; edit_text_character relies on this code to work out
	  which character was passed and SWFcode is bogus.
	* server/event_id.h: store gnash::key::code not SWFCode; setKeyCode
	  converts SWFCode to a corresponding gnash::key::code.
	* server/gnash.h: add enum for different key code types.
	* server/button_character_instance.cpp: lookup SWFCode from
	  gnash::key::code.
	* libbase/utf8.{cpp,h}: add {decode,encode}CanonicalString methods
	  for converting between UTF-8 encoded std::string and std::wstring.
	  Fix some bugs in character decoding.
	* server/edit_text_character.{cpp.h}: use std::wstring internally,
	  as once we receive multi-byte characters the cursor position and
	  std::string position are different. Wide characters mean string
	  manipulation can stay as before. Interfaces still use std::string
	  with conversions when necessary. Make wstring methods private. 
	  set_text_value(const char*) -> setTextValue(const wstring&).
	  Handles characters like ö or ¶.

2008-02-05 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/VideoDecoderGst.cpp: Use a different ffdec
	element specific for screenvideo so that older gst-ffmpeg
	installations can play it.

2008-02-05 Sandro Santilli <strk@keybit.net>

	* cygnal/testsuite/.cvsignore,
	  cygnal/testsuite/cygnal.all/.cvsignore:
	  standard ignores..

2008-02-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/utf8.{h,cpp}: make decodeNextUnicodeCharacter take a 
	  std::string::const_iterator by ref, encodeUnicodeCharacter
	  (presently unused) return a std::string.
	* server/edit_text_character.cpp: use decodeNextUnicodeCharacter.

2008-02-04 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (getOwnProperty): remove useless round
	  trip (key->name->key).
	* server/as_object.cpp (setPropFlags): fix handling of second
	  argument (null, array or invalid).
	* testsuite/actionscript.all/Global.as: add more tests for
	  AsSetPropFlags.

2008-02-03 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: Add some more error handling and
	verbosity.

2008-02-02 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: success for the just-added
	  test.
	* server/edit_text_character.cpp (format_text): expand bounding box
	  at every line, not just at the end (when autoSize is true).
	  Fixes bug #22216.

2008-02-02 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add test for bug #22216.

2008-02-01 Sandro Santilli <strk@keybit.net>.

	* server/swf_function.cpp (call operator): still declare named
	  arguments as locals no matter if they were passed or not.
	* testsuite/actionscript.all/Function.as: add test for bug #22203.
	* server/parser/button_character_def.cpp (read): robustness
	  improvement, fixes bug #22200.
	* server/asobj/xmlsocket.cpp (send): fix assertion. Fixes bug #22199.

2008-01-31  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/qt.m4: Set the topdir if pkg-config exists, so it can be
	used later.
	* macros/pthreads.m4: Don't use host_cpu to match a platform. Look
	for pthreads, it turns out the check has been disabled by accident
	for quite a while... but BSD needs the -pthread flag.
	* utilities/Makefile.am: Add PTHREAD_CFLAGS.

	* libamf/amf.cpp: Oops, return original pointer as returned by
	new, not the incremented pointer. Use :encodeElement() for
	strings. Encode an array of AMF objects.
	* libamf/amf.h: Make all the encoding methods static.
	* libamf/element.{cpp,h}: Add function and variable data types,
	internal to Gnash. Initialize with an array of AMF objects. Create
	a new function block object in memory. Don't return nan, BSD
	doesn't support it.
	* libamf/lcshm.cpp: Correctly remove Listeners. Format a memory
	segment header. Send now works, and puts AMF objects into the
	memory segment.
	
	* configure.ac: Add test for IPC_INFO, which isn't portable to
	BSD.
	* server/asobj/LocalConnection.cpp: Don;t define any LC constants
	here, they're in libamf.lcshm.cpp now instead. Add flag for
	whether we are connected or not.
	* server/asobj/LocalConnection.h: Use LcShm class instead of Shm
	as a base class for shared memory.
	* server/vm/ASHandlers.cpp: Include unistd.h so write() is defined
	on BSD.
	* libbase/shm.cpp: BSD wants 0 cast to key_t.
	* utilities/dumpshm.cpp: Only look for the key if IPC_INFO exists,
	as we can't find the key without if for now. Optionally write the
	output to stdout.
	* macros/qt.m4: Also look in ${QTDIR}/bin.
	* macros/incllist: Look inm /usr/pkg on BSD, not /pkg/.

2008-01-31 Sandro Santilli <strk@keybit.net>

	* libbase/URL.cpp: don't threat ".swf" strings as any special.
	  Fixes parsing of urls with ".swf" in the query string.
	* testsuite/libbase/URLTest.cpp: add test for query strings
	  containing an ".swf" component, like many from
	  http://foo.keybit.net/~strk/mapview/.

2008-01-31 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp (load_movie): still add the acutual filename, if
	  given, in the list of local sandboxes, or "gnash -u http://remote
	  ./local.swf" won't work (the konqueror plugin uses that format,
	  btw).

2008-01-31 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/targetPath.as: make the test
	  buildable with Ming head.

2008-01-31 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.cpp: fix write of LCShmKey.
	* server/asobj/Global.cpp: drop unused header.
	* testsuite/actionscript.all/Math.as: restore some tests.

2008-01-31 Sandro Santilli <strk@keybit.net>

	* server/font.cpp: don't assign 0 to std::strings... actually simplify
	  the code avoiding stream::read_string() and using
	  stream::read_string(std::string&) instead.
	* server/movie_root.cpp (display): do nothing if the movie frame
	  is null. Fixes bug #22189.

2008-01-31 Sandro Santilli <strk@keybit.net>

	* libamf/amf.{cpp,h}: have encodeVariable take an output parameter
	  to return size of the serialized buffer; perform boundary checking
	  before any memcpy.
	* libamf/sol.{cpp,h}: drop unneeded write interfaces, const-correct
	  the others; perform boundary checking before memcopies.
	  Turns the memory corruption in bug #22188 to an assertion failure.

2008-01-31 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk{sup.h,.cpp}: add another rcfile option (insecureSSL).

2008-01-31 Sandro Santilli <strk@keybit.net>

	* libamf/element.cpp, libamf/sol.{cpp,h}: 
	  Some memory management, leaks plugged, mismatched
	  new[]/delete[] fixed.

2008-01-30 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.cpp, server/vm/ASHandlers.cpp:
	  Encode target string in the GETURL request line.
	  Is acceptable as long as neither target string nor url
	  contain newline.

2008-01-30 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.{cpp,h}: make player request handling line-based
	  (each line is one request).
	* server/vm/ASHandlers.cpp (CommonGetUrl): pass the original url to
	  the host, not the gnash::URL mangled one (this fixes javascript
	  calls); don't pass the target as it'll just confuse the url for
	  now (we still need to define a good format for the target).

2008-01-30 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.{cpp,h}: create a pipe for standalone to plugin
	  communication and handle "GET" requests by loading the url
	  in the _top window.
	* server/vm/ASHandlers.cpp (CommonGetUrl): more error handling
	  and debugging info on host geturl request.

2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: gettext macros.

2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/Global.as: add tests showing fussy
	  behaviour with parseInt and octal numbers.
	* server/asobj/Global.cpp: use string::iterator instead of copying
	  strings, remove dead or inactive code, parse octal numbers
	  properly (compatibly, anyway). 

2008-01-30 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp (load_movie): use the pseudo root url
	  for appending to the locale sendboxes. Fixes running
	  multi-file applications from the filesystem in the 
	  plugin (or generally, loading first movie from stdin).

2008-01-30 Sandro Santilli <strk@keybit.net>

	* gui/Player.{cpp,h}: add a setHostFD method.
	* server/movie_root.{cpp,h}: add hostFD getter and setter.
	* server/vm/ASHandlers.cpp (CommonGetUrl): use host fd
	  to request load of an url, if given.
	* gui/gnash.cpp: add -F switch to specify a filedescriptor
	  to use for communicating with the hosting application.

2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/System.cpp: consts
	* server/asobj: (various) drop 'using namespace std;' where it's not	  
	  even used.
	
2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/vm/VM.cpp: let System.cpp decide what to do with the system
	  language string.
	* server/asobj/System.cpp: restrict System.capabilites.language codes
	  to the 20 officially specified. This is compatible with scripts
	  that rely on there only being twenty. 

2008-01-29 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.{cpp,h}: Warn if decodebin can't find a
	decoder for the requested stream.

2008-01-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/Makefile.am: distribute swfmill
	  sources, even if swfmill isn't available.
	* testsuite/misc-swfc.all/Makefile.am: don't attempt to
	  build the button test runner if you can't build the
	  actual swf (missing SWFC).
	* server/vm/ActionExec.cpp (call operator): interrupt
	  execution if an opcode is advertised to cross the code
	  segment boundaries. Fixes bug #22150.
	* libbase/jpeg.cpp: don't long jump in the constructor.
	  Fixes bug #22147.
	* server/fill_style.cpp (create_gradient_bitmap): fix a probably
	  unmeant float to int conversion.
	* server/asobj/LocalConnection.cpp: remove duplicated
	  implementation of gnash::Listener class methods.

2008-01-29 Sandro Santilli <strk@keybit.net>

	* server/as_value.h: make PROPNAME a noop
	* server/movie_root.{cpp,h}: provide a isLevelTarget
	  method to take care of case-insensitively matching
	  a path element with "_level" in SWF<7.
	* server/button_character_instance.cpp,
	  server/character.cpp, server/sprite_instance.cpp,
	  server/vm/ASHandlers.cpp: update "_level" handling.
	* testsuite/actionscript.all/case.as: success in property
	  names.

2008-01-29 Chad Musick <chadmusick@msbx.net>

	* libbase/string_table.h,cpp: Change string_table to be case
	  insensitive for strings in SWF versions less than 7.
	* testsuite/server/PropertyListTest.cpp: Amend Test to not
	  test case-sensitivity when it shouldn't be case sensitive.

2008-01-28 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/VideoDecoderGst.{cpp,h}: Tell the decoder about the
	expected video width and height. Check for error conditions more
	frequently.
	* libmedia/gst/gstappsink.{c,h}: Add
	gst_app_sink_pull_buffer_timed(), which waits up to one second
	before returning if the expected buffer does not make its way
	to the output queue.
	* server/parser/video_stream_def.cpp: Make sure the decoder parses
	intermedia frames if certain frames are skipped. Don't assume that
	frame 0 is a "spin-up" frame. Fixes Video-EmbedSquareTest.

2008-01-28 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (button_sound_loader): robustness
	  improvements. Fix bug #22152.
	* server/parser/action_buffer.cpp (read): just log an swf error
	  and return if the action buffer is 0 bytes long.
	  Fixes bug #22148.
	* server/text.cpp (text_glyph_record::read): robustness improvements.
	  Fixes bug #22149.

2008-01-28 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/parser/video_stream_def.cpp: Make sure ffmpeg doesn't read
	past the end of the buffer by appending 8 zero bytes.

2008-01-28 Sandro Santilli <strk@keybit.net>

	* server/stream.{cpp,h}: fix comments about get_position and
	  ensureBytes, add an ensureBits, make string reading functions
	  fail safe.
	* server/: cxform.cpp, font.cpp, matrix.cpp, rect.cpp,
	  styles.cpp, parser/filter_factory.cpp, swf/StartSoundTag.cpp:
	  Robustness fixes.

2008-01-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* pythonmodule/gnashpython.h: config.h -> gnashconfig.h.

2008-01-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/vm/ASHandlers.cpp (CommonGetUrl): Escape newline, tab etc.
	  Escape pipe and backtick.

2008-01-28 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (CommonGetUrl): escape url before passing
	  the the user-defined url opener. This hopefully fixes a critical
	  bug allowing arbitrary command execution.

2008-01-26 Bastiaan Jacques <bastiaan@bjacques.org>

	* configure.ac: Add some required gstreamer modules to detect.
	* libbase/image.cpp: Call the data() member function of the "source"
	image when update() is called.
	* libbase/image.h: Make data() virtual. Add an explicit constructor
	for rgb similar to the one in image_base.
	* libmedia/gst/MediaDecoderGst.cpp: Exclude some code relying on old
	VideoDecoderGst behaviour.
	* libmedia/gst/VideoDecoderGst.{cpp,h}: Reimplement VideoDecoderGst
	with a simple push/pop interface. Add a class gnashGstBuffer which
	wraps the reference counted GstBuffer as a subclass of image::rgb.
	This fixes bug #22067.
	* libmedia/gst/gstappsink.{c,h}: Statically load this gstreamer
	module. Add a non-blocking method for peeking the queue.
	* libmedia/gst/gstappsrc.c: Statically load the appsrc module.
	* server/asobj/NetStream.{cpp,h}: Change the argument to seek() from
	milliseconds to seconds, because that's what is received from
	ActionScript.
	* server/asobj/NetStreamGst.cpp: Add a missing break in the message
	parsing switch.
	* server/parser/video_stream_def.{cpp,h}: Use the new VideoStreamGst
	implementation.

2008-01-26 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: FlashVarsTest.as, FlashVarsTest.html,
	  Makefile.am: test that any variable passed trough FlashVars
	  is a string, never an object.

2008-01-25 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: send the DATA event, don't just
	  call the user-defined onData handler, when variables are
	  loaded. Fixes bug #22116.

2008-01-25  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/qt.m4: Ubuntu hardy puts QT headers in different
	location, breaking using QTDIR to find them.

	* configure.ac: Add test to use gst-inspect to look for installed
	codecs for Gstreamer.

2008-01-25 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: print the element name when reporting
	about an error message coming from the pipeline.

2008-01-25 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/String.as: add better test
	  for split(''), as the available ones weren't catching
	  the bug just fixed.
	* server/asobj/string.cpp: fix String.split('') to return
	  an array in which *each* element is a character from the
	  input. This fixes http://www.gazbming.com/sokoban2.swf.

2008-01-25 Sandro Santilli <strk@keybit.net>

	* gui/Makefile.am: generate klash.moc onlhy if KDE gui is enabled.
	  Fixes bug #21019.
	* libamf/lcshm.{cpp,h}, server/asobj/LocalConnection.cpp,
	  testsuite/libamf.all/test_lc.cpp, utilities/dumpshm.cpp:
	  Use std::auto_ptr for returning newly allocated stuff
	  while transferring ownerhips to caller.
	* testsuite/misc-ming.all/NetStream-SquareTest.c: add some newlines
	  to workaround some bug in Ming head.

2008-01-25  Rob Savoye  <rob@ripple.welcomehome.org>

	* libamf/amf.cpp: Make extractElement() only process a single
	element instead of looping.
	* libamf/element.{h,cpp}: Convert the element in common data
	types. Add methods for creating special AMF objects.
	* libamf/lcshm.{cpp,h}: Add better support for SYSV style memory
	segments. Tweak parseHeader() to only grab the header, and not
	any of the AMF elements in the body. Also parse the header and the
	body of the memory segment when connecting. Add dump() method.
	* libbase/shm.{cpp,h}: Move SYSV style memory support to it's own
	method to reduce ifdef spagetti.
	* utilities/dumpshm.cpp: Use rewritten LcShm class instead of
	handling the segment directly.
	* testsuite/libamf.all/test_lc.cpp: 

2008-01-25 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/place_object_test.c: add more tests (and 
	  more to be added - gnash fails not allowing characters in a
	  DisplayList to share a depth).
	* server/DynamicShape.cpp (clear): reset _currfill and _currline
	  or they might point to released memory (line/fill styles were
	  cleared). Fixes illegal vector access in
	  http://www.gazbming.com/embed.php?id=sketchpad
	* server/swf/DefineFontAlignZonesTag.cpp: warn only
	  once about not being implemented.
	* server/parser/shape_character_def.cpp (read): 
	  add warning about unimplemented DEFINESHAPE4 edge
	  boundaries and scales.
	* gui/gui.cpp (getMovieInfo): add dragging character
	  and character under the pointer.
	* server/movie_root.{cpp,h}: expose a method to query 
	  entity under the mouse and dragging char.

2008-01-24 Sandro Santilli <strk@keybit.net>

	* testsuite/Makefile.am: distribute simple.exp
	* server/as_object.cpp: use PROPNAME where appropriate.
	* server/as_environment.cpp (find_object): use PROPNAME where
	  appropriate.
	* server/debugger.cpp: use PROPNAME when appropriate
	* server/movie_root.cpp (getKeyObject): use PROPNAME
	* server/asobj/xmlsocket.cpp (getEventHandler): use PROPNAME.
	* extensions/fileio/fileio.cpp, extensions/gtk2/gtkext.cpp:
	  Don't convert strings passed to init_member, isn't needed.
	* server/vm/ActionExec.cpp: use PROPNAME rather then manually 
	  convert to lowercase (propedeutic to fix props case).

2008-01-24 Chad Musick <chadmusick@msbx.net>

	* libbase/string_table.cpp,.h: Add a case insensitive option to
	  find and value
	* server/asClass.h,.cpp: Change code to compile with new string
	  table key type (keys cannot be converted in one step to as_value)

2008-01-23 Sandro Santilli <strk@keybit.net>

	* gui/kde_glue_agg.cpp: keep rendering no matter what HAVE_QTOPIA says
	  (or rendering would be disabled for normal kde-gnash)
	  [ this is a dejavu.. see ChangeLog entry of 2007-11-30 ]
	  Fixes bug #22093.

2008-01-23 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/SoundGst.cpp: loadSound: if this is a streaming sound,
	start it ASAP.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: Video-EmbedSquareTest.c,
	  Video-EmbedSquareTestRunner.cpp: have mouse clicks change
	  play state, check that play state of the root drives
	  play state of the video.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* libbase/log.{cpp,h}: append to the log instead of truncating.
	  This is so a web page containing multiple SWF movies doesn't
	  trigger writes to truncated logs.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (read): only 
	  skip parsing shapes with 0 line/fill bits if the tag
	  is a DEFINEFONT*. Fixes bug #22000 and a secondary
	  bug #21923.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_test2runner.cpp: successes.
	* server/character.h (isMaskLayer): dynamic masks are not mask
	  layers.
	* server/dlist.cpp (add_invalidated_bounds): use isMaskLayer rather
	  then comparing about the noClipDepthValue.
	* server/sprite_instance.cpp (get_topmost_mouse_entity,
	  findDropTarget): rewrite mouse entity and drop target finders
	  to take layer (static) masks into account.
	  This fixes bug #21923 and movie in comment #7 of bug #20911.

2008-01-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.cpp: Don't increment verbosity automatically when some
	  debugging output is enabled.
	* gui/gtk.cpp: Use 'program-name' in about dialogue.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (pointInVisibleShape): static masks
	  don't depend on having mouse handlers in checking hitTest.
	* testsuite/misc-ming.all/masks_test2.c: add some self-contained
	  tests, make a statically-masked instance mouse-sensitive.
	* testsuite/misc-ming.all/masks_test2runner.cpp: check that
	  the mouse-sensitive character shouldn't grab mouse pointer
	  if hit out of it's static mask.

2008-01-23 Sandro Santilli <strk@keybit.net>

	* server/asobj/LoadVars.cpp: use named strings when available.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* extensions/dejagnu/dejagnu.cpp, extensions/gtk2/gtkext.cpp:
	  naively fix warnings..

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/impl.cpp (clear):
	  unregister the render handler, and do so *after* the GC collect
	  runs, clear the movie root before that.
	  This seems to fix both bug #21311 and bug #21310 (segfaults
	  on exit).

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (markReachableResources): don't assume
	  the root movie was registered. Fixes bug #22079.

2008-01-22 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: Better error handling for play().

2008-01-22 Sandro Santilli <strk@keybit.net>

	* testsuite/samples/Makefile.am: drop extraneous block of code, most
	  likely ended in there due to a copy&paste error.

2008-01-22 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: pause(): set a default state to hush
	Sandro's compiler.

2008-01-22 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.h: Add method to set url opener format.
	* gui/gtk{sup.h,.cpp}: option to set url opener format, tidy up,
	  don't leak prefsData struct when the dialogue is closed.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStream.{h,cpp}: add an isConnected
	  method and use it from AS methods.
	* testsuite/actionscript.all/NetStream.as: bytesLoaded/bytesTotal
	  are undefined if the NetStream doesn't have an associated
	  NetConnection (fixed).
	* testsuite/misc-ming.all/NetStream-SquareTest.c: currentFPS is
	  undefined if the NetStream doesn't have an associated NetConnection,
	  a number otherwise (fixed).

2008-01-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/NetStream-SquareTest.c: add a test
	  segfaulting Gnash. See bug #22039.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_swap_depth): ignore the call when
	  target and source characters have the same depth.
	* server/asobj/SharedObject.cpp (sharedobject_getlocal): register the
	  static GcResource with the VM. Fixes bug #22039, but not the
	  correctness bugs as tested in the SharedObject.as case.
	* testsuite/actionscript.all/SharedObject.as: test that multiple calls
	  to SharedObject.getLocal using same key return the same in-memory
	  object, while changing the key returns a different object.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/NetStream-SquareTest.c: expect the failures
	  in currentFps, till bjacques fixes it. Add test for metadata object
	  being an Object instance.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStreamGst.cpp: make metadata object properties
	  enumerable, deletable and overridable, fix bool properties
	  and the 'duration' unit.
	* testsuite/misc-ming.all/NetStream-SquareTest.c: test metadata
	  object composition.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetConnection.cpp: Remove duplicate URL announcement
	message.
	* server/asobj/NetStreamGst.{cpp,h}: Separate the video and audio
	decoding modules into bins and dynamically plug them when
	corresponding streams are encountered. This allows NetStream to play
	video-only or audio-only streams. Also, only play audio if a sound
	handler exists (in other words, if sound was enabled). Emit the
	playStop onStatus signal when an error is encountered.

2008-01-22 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStream.cpp: use as_object::callMethod to dispatch
	  onStatus and onMetData events.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/gstflvdemux.c: statically load the FLV demuxer.
	Dynamically loading it resulted in consisted crashing on Fedora 7. The
	static load method is deprecated by gstreamer, but we don't have a
	better solution right now.

2008-01-21  Rob Savoye  <rob@ripple.welcomehome.org>

	* gui/gtk.cpp: Only initialize LIRC if lirc is enabled.

	* libamf/sol.cpp: Swap from host to network for the magic number,
	not network to host. Fixes #22013.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: don't neglect to link the video
	pad if the *audio* pad is already linked.

2008-01-21  Rob Savoye  <rob@ripple.welcomehome.org>

	* libbase/network.cpp: Use _debug instead of an ifdef. Comment out
	trace messages in each method. Add hexdumps for network traffic.
	* gui/gnash.cpp: Add ALP includes.
	* gui/kde_glue_agg.cpp: Include qicon.h and agg headers.
	* gui/am-frag/gtk.am: Add ALP, which is a GTK derived GUI.
	* gui/am-frag/kde.am: Also build under Qtopia.
	* libamf/sol.cpp: always use boost:: with numeric data typedefs.
	* macros/ffmpeg.m4: Add better OpenBSD support, but maybe a moot
	point now since Gnash doesn't link directly against ffmpeg now.
	* macros/gettext.m4: OpenBSD defines INTLLIBS differently.
	* macros/glib.m4: We don't want -L/usr in the link path either.
	* configure.ac: Use gnashconfig.h instead of just config.h.
	* All GPL'd files: Update copyright years.
	* Most files: Include gnashconfig.h instead of config.h to avoid
	any name collisions.
	* autogen.sh: Fix the files generated form templates to include
	gnashconfig.h, not config.h, which isn't a unique name.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* libmedia/gst/gstflvdemux.c: Add a new #define so that this file will
	compile against older Gstreamer.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStream.cpp: return undefined for currentFPS if a
	nonsensical number results.
	* server/asobj/NetStreamGst.cpp: whitespace fixes.
	* testsuite/actionscript.all/NetStream.as: revert my previous change,
	because the test accurately reflected PP behaviour, so we should mimic
	it.

2008-01-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_testrunner.cpp: add tests for effect
	  of dynamic masks on mouse events.

2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/asobj/NetStreamGst.cpp: Disable parsing code for
	buffering messages, as the same is achived through signal 
	handlers and older gstreamer doesn't have this function. Emit
	the playStop message when the end of the stream has been
	reached (allows NetStream-SquareTest to run).
	* testsuite/actionscript.all/NetConnection.as: We currently don't
	implement the isConnected property, so xcheck it for now.
	* testsuite/actionscript.all/NetStream.as: We now implement
	currentFPS.

2008-01-21 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp: warn only once about different
	  stream/playback info (yes, was annoying).
	* testsuite/misc-ming.all/NetStream-SquareTest.c: altought the test
	  shows gst is unable to load the FLV, we seem to support the
	  'currentFps' property now..

2008-01-21 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp, server/button_character_instance.cpp,
	  server/sprite_instance.cpp, server/asobj/xml.cpp: use new
	  named strings. This should be particularely effective for
	  sprite_instance::can_handle_mouse_event, which is called
	  on every mouse movement.
	* server/character.{cpp,h}: add a getUserDefinedMethod() interface
	  taking a string_table::key.
	* server/event_id.h, vm/action.cpp: add event_id::get_funtion_key
	  method.
	* server/namedStrings.{cpp,h}: add more named strings
	  for core properties.

2008-01-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/System.cpp: correct typo in server string, clean up.
	* server/as_value.cpp: Drop check for infinity after boost::lexical_cast
	  from string to double (it can't happen), clean up.

2008-01-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (pointInVisibleShape): even if we're a
	  mask still run the hitTest if we can handle mouse events.
	* testsuite/misc-ming.all/masks_test.c: success in masks with mouse
	  events and hitTest results.

2008-01-21 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/asobj/SoundGst.cpp: don't start playing sound in loadSound(),
	  always seek (allows replay of the same sound)	

2008-01-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: masks_test.c, masks_testrunner.cpp:
	  Improved self-containment: print instructions on how
	  to manually run and verify.

2008-01-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_testrunner.cpp: pixel checking and
	  invalidated bounds testing after mask/maskee swapping.

2008-01-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* configure.ac: Disable the use of mad and ffmpeg, because they
	are no longer maintained media backends.
	* libmedia/Makefile.am: Compile the newly added gstflvdemux.{h,cpp}
	and gstflvparse.{h,cpp}. These files are Gstreamer's new FLV demuxer,
	which will be loaded on-the-fly if it not available on the system.
	* server/namedStrings.{h,cpp}: Add a symbol for onMetaData.
	* server/asobj/NetConnection.cpp: Replace openConnection with
	validateURL, since that name more accurately reflects its current
	purpose. Media handlers will now be in charge of starting their own
	network connections. Remove (now) unused methods.
	* server/asobj/NetStream.{cpp,h}: Use symbolic names for pause modes.
	Implement onMetaData through processMetaData.
	* server/asobj/NetStreamGst.{h,cpp}: Reimplement the Gstreamer
	NetStream handler. Gstreamer now takes care of URL resolving,
	downloading, buffering, FLV decoding and all grocery shopping and
	house cleaning. Because Gstreamer abstracts much of the threading
	code, we rarely need to lock the main execution thread. The new
	handler has been tested to work with YouTube, Lulu.tv, streaming
	ogg-theora-vorbis etc. However, seeking HTTP streams does not
	currently work.
	* server/asobj/Sound.cpp: Don't try to start a NetConnection, as it
	makes no sense in the base class.
	* server/asobj/SoundGst.cpp: Like NetStreamGst, SoundGst now lets
	Gstreamer handle downloading URLs and buffering data. SoundGst has
	received a general cleanup.

2008-01-20 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: keep a pointer from the mask to
	  the maskee, as every character can dynamically mask at most
	  a single maskee, so need to get an handle of old maskees
	  when new are registered; have pointInVisibleShape return
	  false for dynamic masks.
	* server/sprite_instance.cpp: (pointInVisibleShape): if a character
	  is a mask return false, if it's dynamically masked check hit test
	  against the mask too; (setMask): return a boolean value.
	* testsuite/misc-ming.all/masks_test.c: update expected results, most
	  tests pass now, except a couple in which I'd thing Gnash is correct
	  despite the official results...

2008-01-20  Rob Savoye  <rob@ute.welcomehome.org>

	* cygnal/Makefile.am: Build a library of dependant files, instead
	of linking them directly into the executable.
	* cygnal/testsuite/cygnal.all/Makefile.am: Link the library, not
	the objects. This fixes the distcheck problem of object files
	being left over after make check.

2008-01-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtksup.h: get rid of C crap.

2008-01-19 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_test.c: move the dejagnu
	  window to the right, so that pixel checking isn't confused
	  by color of text...

2008-01-19 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_test.c: test hitTest effects
	  on dynamic masks and maskees. See bug #21923.

2008-01-18 Sandro Santilli <strk@keybit.net>

	* cygnal/testsuite/cygnal.all/Makefile.am: don't build http.o
	  and crc.o in source dir; clean all generated files.
	* testsuite/misc-mtasc.all/Makefile.am: clean generated files.

2008-01-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/xml.h, libgeometry/{Range,Point}2d.h,
	  server/edit_text_character.h: drop 'using namespace std;' from
	  headers.
	* Lots of .cpp files: add std namespace where necessary.

2008-01-18 Sandro Santilli <strk@keybit.net>

	* cygnal/http.cpp: fix extra semicolon error.

2008-01-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}: add methods to set whitelist, blacklist, 
	  flashVersionString, flashSystemOS, flashSystemManufacturer,
	  startStopped, insecureSSL. Add updateFile() that decides where
	  to write a gnashrc file (either to GNASHRC or to ~/.gnashrc, fail
	  if neither can be found). Document more functions.
	* gui/gtk{sup.h,.cpp}: clean up movie properties dialogue, add more
	  options to preferences dialogue. Allow saving to disk by clicking
	  'save'.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (find_object): don't allow dots
	  after a slash was seen. Completes fixing the getvariable-delimiter
	  swfdec tests (see bug #21883).
	* testsuite/swfdec/PASSING: getvariable-delimiter-{6,7,8}.swf
	  succeed now, completing the serie.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp: add more corner case handlign 
	  for get_variable and find_object. The code keeps getting
	  uglier, but this change gets no unexpected failure while
	  gets unexpected successes in a few places:
	* testsuite/actionscript.all/getvariable.as: successes.
	* testsuite/misc-ming.all/callFunction_test.c: successes
	* testsuite/swfdec/PASSING: successes.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* libbase/tu_file.cpp: fix memory buffer adapter, applying
	  an unchecked but blindly trusting patch sent on the gameswf
	  list by Eli Curtz.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/getvariable.as: add absurd tests
	  about getvariable/setvariable paths... See bug #21883.

2008-01-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}: enable writing of rcfiles (updateFile). Add function
	  to set malformedSWF verbosity (already declared in rc.h). Add convenience
	  function for writing path lists to a stream. Make sure strings consisting
	  entirely of spaces are emptied when reading from the rcfile.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* server/button_character_instance.cpp (get_topmost_mouse_entity):
	  topmost entity is a child, if it's a mouse entity, not necessarely
	  us.
	* testsuite/misc-swfc.all/: Makefile.am, button_test1.sc,
	  button_test1runner.cpp: turn button_test1.swf into a self-contained
	  interactive test.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* server/button_character_instance.{cpp,h}: drop the :advance()
	  method, no more needed; reduce ::display() to a few lines.

2008-01-17 Sandro Santilli <strk@keybit.net>

	* server/button_character_instance.{cpp,h}: drop dead enum,
	  add HIT state to e_mouse_state enum, rework
	  get_topmost_mouse_entity to use pointInVisibleShape and
	  the get_active_characters method.
	* macros/firefox.m4: make --with-npapi-plugindir switch work.

2008-01-16  Rob Savoye  <rob@ripple.welcomehome.org>

	* configure.ac: Don't use AX_GCC_ARCHFLAG anymore.
	* Makefile.am: Make a seperate install-plugins target. Build all
	extensions, guis, and cygnal for distcheck. Fix ipkg
	packaging. Add OpenBSD packaging.
	* plugin/Makefile.am: Make seperate install-plugin and
	install-plugins targets.
	* plugin/klash/Makefile.am: Make install-plugin target with
	install-plugins alias.

2008-01-16 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/check.as: add a MING_LOGICAL_ANDOR_BROKEN
	  macro.
	* testsuite/actionscript.all/ops.as: don't run logical and/or tests
	  if the installed Ming version is broken there... Fix expected
	  results with a sane Ming version.

2008-01-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/video_stream_def.cpp: fix size_t format warning.
	* libbase/rc.cpp: fix variable name for OS2.
	* gui/gtk{sup.h,.cpp}: redesign preferences dialogue; send changes
	  to rcfile (nothing gets saved yet, but some changes work without a
	  restart).

2008-01-16 Sandro Santilli <strk@keybit.net>

	* gui/gui.cpp (getMovieInfo): add class info of hit character.
	* server/movie_root.cpp (fire_mouse_event): for _droptarget, register
	  closest AS-referenceable ancestor, not topmost character.
	  Makes some progress in the movie 1.swf from comment 6 of bug #20911.
	* testsuite/misc-ming.all/shape_test.c: test that clip events
	  are not invoked for shape placements.

2008-01-16 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/: Makefile.am, button_test1.sc:
	  initial test for button interaction
	* server/button_character_instance.{cpp,h}: allow
	  accessing button childs (state characters) by name.
	* server/swf/tag_loaders.cpp (button_character_loader):
	  properly construct button characters
	* server/parser/button_character_def.{cpp,h}:
	  Keep a pointer to the movie_definition containing
	  Button definitions, expose a getSWFVersion.

2008-01-16 Sandro Santilli <strk@keybit.net>

	* server/: character.h, button_character_instance.h,
	  edit_text_character.h, sprite_instance.h, video_stream_instance.h:
	  const-correct wantsInstanceName() and isActionScriptReferenceable()
	  virtual methods. Added a getClosestASReferenceableAncestor() method.

2008-01-16 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp: fix confusing SECURITY message about sandbox
	  appending.
	* server/impl.cpp: remove dead code.
	* server/sprite_instance.cpp (processCompletedLoadVariableRequest):
	  Appropriately case variable names.

2008-01-16 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (loadVariables): oops, skil variables
	  with *name* starting with dollar sign, not value...

2008-01-15  Rob Savoye  <rob@ripple.welcomehome.org>

	* plugin/Makefile.am: Add install-plugin target. Don't do
	anything for just the install target.
	* packaging/debian/rules: Add install-plugin.
	* packaging/redhat/gnash.spec: Add install-plugin.
	* macros/boost.m4: Change the sed pattern to always remove the
	suffix correctly. Fixes #21977.
	* macros/lib-link.m4, nls.m4: Remove usages of AC_CONFIG_AUX_DIR
	macro, as we don't use an aux dir.

2008-01-15 Sandro Santilli <strk@keybit.net>

	* libamf/: element.{cpp,h}, lcshm.{cpp,h}, sol.{cpp,h},
	  utilities/soldumper.cpp: fix a bunch of compiler warnings.
	  The code isn't any better, but error stream is less
	  polluted...

2008-01-15 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp: initialize TextField as an
	  AsBroadcaster, broadcast onChanged events (it seems onKillFocus
	  and onSetFocus should not... no idea why).
	* testsuite/actionscript.all/TextField.as: test existance of
	  AsBroadcaster interface in TextField instance, updated expected
	  results.

2008-01-15 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (tostring_method): don't check size of string
	  returned by get_string_value, just return it as is.
	  Fixes bug #22024.
	* testsuite/actionscript.all/String.as: test string concatenation
	  between a primitive string and a string object.

2008-01-15 Sandro Santilli <strk@keybit.net>

	* server/parser/movie_definition.h: comment out unused parameter.
	* server/sprite_instance.cpp (loadVariables): skip sending variables
	  starting with a dollar sign. See bug #22006.
	* server/LoadVariablesThread.{cpp,h}: implement download canceling
	  and proper destructor (cancels&joins). Fixes segfault reported
	  in bug #21675 (comment #6).

2008-01-15 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: shift-{5,6,7}.swf succeed
	* server/vm/ASHandlers.cpp: fix ActionShift* opcodes.
	* testsuite/actionscript.all/ops.as: add tests for ActionShiftRight2
	  and formerly failing tests for ActionShiftLeft.

2008-01-14 Sandro Santilli <strk@keybit.net>

	* testsuite/gnashrc.in: avoid printing malformed swf and actionscript
	  error messages while executing automated testcases.

2008-01-14 Sandro Santilli <strk@keybit.net>

	* server/asobj/Global.cpp: stub ASSetNative, ASSetNativeAccessor,
	  ASconstructor.
	* testsuite/actionscript.all/Global.as: test existance of ASnative,
	  ASSetNative, ASSetNativeAccessor and ASconstructor.

2008-01-14 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (loadVariables): don't skip the $version
	  property, if it's there, and only add enumeratable properties.

2008-01-14 Sandro Santilli <strk@keybit.net>

	* server/parser/: movie_definition.h, BitmapMovieDefinition.h,
	  movie_def_impl.{cpp,h}:
	  Drop unused create_instance,
	  add a 'parent' argument to create_movie_instance.
	* server/BitmapMovieInstance.{cpp,h}: add 'parent' argument to
	  constructor.
	* testsuite/DummyMovieDefinition.h: Drop unused create_instance. 
	* server/impl.{cpp,h}: drop unused create_library_movie_inst function.
	* server/movie_instance.cpp (ctor): pass the character id in
	  accordance with the assertion checking in character ctor
	  (TODO: drop the id from character instances!)
	* server/sprite_instance.cpp:
	  (loadMovie): update call to create_movie_instance;
	  (attachMovieClipProperties) don't register a $version variable
	  if the sprite has a parent: fixes bug #22006.
	* server/asobj/MovieClipLoader.cpp: comment update
	* testsuite/actionscript.all/MovieClip.as: add test for availability
	  of the $version property.
	* testsuite/swfdec/PASSING: movieclip-version-{6,7,8}.swf and
	  movie-enumerate-8.swf (completes the series) succeed.

2008-01-14 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.cpp: fix perror() usage, check that the pipe is
	  initialized before attempting to write to it.

2008-01-13 Sandro Santilli <strk@keybit.net>

	* libbase/URL.h: reduce string copies (not only in set_querystring).

2008-01-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: i18n, add checkbox to sound toggle.
	* po/de.po: updated translation.
	* po/POTFILES.in: remove left-over file (as far as I can tell).
	* po/Makefile.am: add libmedia, extensions, plugin directories
	  for internationalization (you can see how long it hasn't been
	  updated...).
	* po/gnash.pot: updated gnash.pot.

2008-01-12 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (loadVariables): don't force
	  POST method always. Fixes orisinal games again.

2008-01-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/{SharedObject.cpp,string.cpp}, server/vm/ActionExec.cpp:
	  fix size_t format warnings.
	* pythonmodule/gnashpython.{cpp,h}: extend gnash::character wrapper.
	* pythonmodule/pyGnash.cpp: add character bindings.

2008-01-12 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libbase/URL.h: add set method for querystring
	* server/sprite_instance.cpp: case-insensitive check for GET/POST;
	  fix double "?"	

2008-01-12 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libbase/URL.h: add set method for querystring
	* server/sprite_instance.{cpp,h}: implement GET and POST for 
	  loadVariables()	

2008-01-11 Sandro Santilli <strk@keybit.net>

	* testsuite/generic-testrunner.sh: sleep a tenth (1/10)
	  of a second between advances. Makes loading data in
	  the testsuite more stabily succeed.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* configure.ac: add a --disable-plugins option to disable
	  both kparts and npapi plugins.
	* macros/firefox.m4: obsolete --with-plugindir, use
	  --with-npapi-plugindir instead (the old one still work
	  for backward compatibility).
	* doc/C/usermanual/installation/: custompath_configuration.xml,
	  feature_configuration.xml: update info about plugin build and
	  install dir options.

2008-01-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/sprite_instance.cpp, server/loadVariablesThread.cpp: Use
	  SIZET_FMT for size_t format string.
	* pythonmodule/gnashpython.cpp: more methods in Player class.
	* pythonmodule/pyGnash.cpp: update bindings.
	* pythonmodule/gnashPythonExample.py: update examples.
	
2008-01-11 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: chartoascii-4.swf succeed
	  now. The versions 5 to 8 stil fail...
	* server/vm/ASHandlers.cpp (ActionOrd): make sure to
	  return an unsigned int. Fixes load of games from
	  http://www.ferryhalim.com/orisinal/.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* server/LoadVariablesThread.cpp: don't handle newlines
	  in any special way...
	* testsuite/actionscript.all/MovieClip.as: test loadVariables
	  method and tag (GETURL).

2008-01-11 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: fix the MovieClip.meth() method
	  to invoke toLowerString on first argument.
	* testsuite/actionscript.all/MovieClip.as: test that meth()
	  should invoke toLowerString on first argument.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* server/asobj/LoadVars.cpp: rewrite the whole class.
	* testsuite/actionscript.all/LoadVars.as: no more failures for SWF6+
	  (the remaining ones are for availability of the LoadVars in SWF5,
	   which is suspicious).

2008-01-11 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/LoadVars.as: further improved
	  the test. Will fix in next commit.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* testsuite/media/vars.txt: add a final variable label
	  after newlines and w/out a terminating ampersend.
	* testsuite/actionscript.all/LoadVars.as: test that labels
	  placed after newlines (and non ampersend-terminated) are
	  still used !!.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionNewEquals): for SWF<=5
	  always convert the input parameters to primitives.
	* testsuite/actionscript.all/String.as: success in
	  number to string object comparison.
	* testsuite/actionscript.all/ops.as: success in comparison
	  between different string objects with same primitive value.

2008-01-11 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/String.as: test String object
	  construction.

2008-01-10 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_member): it seems like _global is
	  available for sprites defined by SWF6, no matter VM version.

2008-01-10 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: invoke onData at end of loadVariables
	  processing.
	* gui/gui.cpp (resize_view): always redraw on resize.
	  Fixes bug #21971.

2008-01-10 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: size_t is an unsigned int here...
	  use SIZET_FMT for it.

2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/sprite_instance.cpp: fix string format for unsigned long.  

2008-01-10 Sandro Santilli <strk@keybit.net>

	* < all over > : since I dropped timers.h inclusion from movie_root.h
	  the remaining of the changes are adding missing include here and
	  there.
	* server/array.cpp: fix double-to-int cast in Array ctor.
	* testsuite/swfdec/PASSING: settimeout-*.swf succeed.
	* server/movie_root.cpp (executeTimers): execute timers
	  in order of expiration.
	* server/timers.{cpp,h}: extend interfaces to allow for
	  less clock lookup calls and query expiration time.

2008-01-10 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (sound_stream_head_loader,
	  define_sound_loader): check sample rate arguments.

2008-01-10 Sandro Santilli <strk@keybit.net>

	* server/parser/movie_def_impl.{cpp,h}: make exported resource
	  container access thread-safe, cleanup debug messages
	  in get_export_resource().
	* server/swf/tag_loaders.cpp (sound_stream_head_loader): print
	  unimplemented messages for unsupported tag records.
	* server/asClass.h, server/asobj/ClassHierarchy.h: comment out
	  unused parameters (to remove compiler warnings).
	* server/: drag_state.h, movie_root.cpp: use floats for drag offset.
	* pythonmodule/Makefile.am: AUTOMAKE_OPTIONS must be outside
	  of conditionals. Fixes bug #21994.

2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac: hopefully make sure pythonmodule really doesn't
	  build automatically.

2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/movie_root.cpp: use get() method of smart pointer
	  fix a broken build (at least with boost 1.33).
	* pythonmodule/*: General fix up.

2008-01-09 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* pythonmodule/gnashpython.{h,cpp}: new pythonwrapper::GnashPlayer
	  class for providing Python bindings.
	* pythonmodule/pyGnash.cpp: the python module with interface to
	  gnash core libs.
	* pythonmodule/gnashPythonExample.py: example script as a substitute
	  for proper documentation.
	* configure.ac, Makefile.am, pythonmodule/Makefile.am: add new
	  directories; it's not built by default, neither are there macros
	  in configure.ac yet. To build, change ENABLE_GNASH_PYTHON_MODULE
	  manually and specify the python headers/libs in pythonmodule/Makefile.am.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (findCharacterByTarget): start from
	  an arbitrary level for resolution, not necessarely the
	  original root movie...
	* server/vm/ASHandlers.cpp (CommonGetUrl):
	  Don't convert target movie id to lowercase !
	  Provide a compile-time macro to determine whether or not
	  movie loads are postponed, being a pretty new thing...
	  (defaults to do postpone).

2008-01-09 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: loadMovieTest.c, loadMovieTestRunner.cpp:
	  Initial work to turn loadMovieTest.swf into a
	  self-described/contained testcase.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/asobj/Math.cpp: make _global.Math inherit
	  from Object.
	* testsuite/actionscript.all/Math.as: test that _global.Math
	  is instance of Object, add consistency check.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: add a loadMovie method
	  to schedule loads for next advance, using late
	  evaluation of target path (tested, but not automated).
	* server/vm/ASHandlers.cpp (CommonGetUrl): delegate
	  movie loads to movie_root.
	* testsuite/misc-mtasc.all/: level5.as, level87.as,
	  level99.as: frame count at loaded movie execution
	  succeed.
	* testsuite/swfdec/PASSING: loadvariables-5.swf
	  succeeds (no idea why..)

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/: as_value.cpp, movie_root.{cpp,h}:
	  Add a movie_root::findCharacterByTarget() and
	  use it for soft refs.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DragDropTestRunner.cpp:
	  advance playhead while waiting for movies to be
	  loaded.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (setLevel): remove interval
	  timers when replacing _level0. Add note about additional
	  things to check for that case.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: clear the interval timeouts
	  on restart/reset/clear.

2008-01-09 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (setLevel): properly destroy
	  existing levels when loading into them.
	* testsuite/gnashrc.in: pretend we're version 
	  Pretend we're version WIN 9,0,100,0 while running tests
	  (to be predictable and compatible with swfdec testsuite)
	* testsuite/swfdec/gen_run_swfdec_testsuite.sh:
	  Use testsuite/gnashrc

2008-01-08 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/: level5.as, level87.as,
	  level99.as, levels.as: add tests to check when do
	  actions in first frame of loaded levels get executed.

2008-01-08 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: DrawingApiTest.as,
	  DrawingApiTestRunner.cpp: fix test, now the
	  beginFill alpha is correct (couldn't belive we
	  didn't have a test for it, indeed we had but was
	  incorrect).

2008-01-08 Sandro Santilli <strk@keybit.net>

	* server/asobj/MovieClipLoader.cpp: fix MovieClipLoader.getProgress()
	* testsuite/actionscript.all/MovieClipLoader.as: test
	  MovieClipLoader.getProgress().

2008-01-08 Sandro Santilli <strk@keybit.net>

	* server/impl.cpp: have MovieLibrary read cache limit from Rc file.
	  See bug #21825.
	* server/sprite_instance.cpp (sprite_beginFill): don't ignore
	  second argument (we miss a test for this, incredibly).

2008-01-08 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (loadMovie): properly compute
	  level number when we're the root movie.
	* testsuite/misc-mtasc.all/: Makefile.am, level5.as, level87.as,
	  level99.as: add test for loading a moving into an existing
	  level.

2008-01-08 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: synced with master git (except
	  I had to skip movieclip-version-* tests to avoid timeouts..)
	* testsuite/misc-ming.all/loadMovieTestRunner.cpp: advance after
	  pressing the mouse button, as (theoretically) loads should never
	  happen before next advance.
	* server/sprite_instance.cpp: implement MovieClip.meth() function.
	* testsuite/actionscript.all/MovieClip.as: tests for MovieClip.meth().
	* testsuite/misc-mtasc.all/level99.as: add tests for _levelX._name
	  being undefined.

2008-01-07 Matthias Berndt <berndt.matthias@gmx.de>

	* macros/boost.m4: construct proper ac_cv_path_boost_lib and
	  ac_cv_path_boost_extra_lib even if the paths contain dots.
	  See bug #21977.

2008-01-07 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_root): use VM version, not
	  relative movie one, to determine whether or not to use
	  _lockroot.
	* testsuite/actionscript.all/MovieClipLoader.as: _lockroot use
	  success.

2008-01-07 Sandro Santilli <strk@keybit.net>

	* server/array.cpp: in Array constructor take negative
	  length as zero. Not correct yet, but at least saves some
	  memory and makes Gnash a bit more robust (fixes bug #21975).

2008-01-07 Sandro Santilli <strk@keybit.net>

	* server/fill_style.{cpp,h}: add a matrix argument
	  to the constructor taking a bitmap definition.
	* server/parser/BitmapMovieDefinition.cpp: appropriately
	  scale bitmap fill rather then the drawn shape.
	* server/BitmapMovieInstance.cpp: don't scale the character,
	  it's the fill that needed scaling.
	* testsuite/swfdec/PASSING: moviecliploader-known-image-size-{7,8}.swf
	  succeed.
	* testsuite/actionscript.all/MovieClipLoader.as: checks for jpeg size
	  succeed.

2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gnash.cpp, gui/Player.h: drop -b option.
	  
2008-01-07 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClipLoader.as: fix the test, and add
	  a new test showing _width/_height of loaded bitmap is wrong (the
	  active_sharing.swf youtube bug).

2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: realize _overlay window before reparenting the
	  drawing area (stops OGL flipping the movie upside-down).
	  
2008-01-07 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.cpp: make verbosity a compile-time option.
	* server/sprite_instance.cpp (sprite_setMask): allow MovieClip.setMask
	  to be called on any character, not just sprites. Fixes
	  swfdec's image/mask-textfield-6.swf test (not automated).

2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: move fullscreen to View menu and give it a pretty icon,
	  plus some reorganization that got missed last time.

2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk{sup.h,.cpp}: cleanup, reorganize, add convenience functions
	  for widget and dialogue display. Add the Gnash icon to most windows.
	  Fix fullscreen display for movies that are initially larger than the
	  screen size in the stand-alone player. The icon in the 'About'
	  dialogue also works now.
	* plugin/plugin.cpp: add 2008 to copyright declaration in the plugin
	  description.
	* gui/gui.{h,cpp}: add comments.
	* all modified files: add 2008 to copyright year.

2008-01-07 Sandro Santilli <strk@keybit.net>

	* AUTHORS: add Zou Lunkai and Benjamin Wolsey.

2008-01-05  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/LocalConnection.{cpp,h}:  Use boost::uint8_t
	instead of char *.
	* po/Makefile.am: Make the dircetories before trying to install in
	them.
	* testsuite/libamf.all/test_lc.cpp: New test for LocalConnection
	base class.
	* testsuite/libamf.all/Makefile.am: Remove the old bogus AMF
	tests. Things are too different now for these to work without a
	lot of effort, and their functionality is covered by the other
	tests anyway.
	* testsuiote/libamf.all/test_{number,object,variable,string}.cpp:
	Remove as these are now bogus.
	* testsuite/libamf.all/test_sol.cpp: Use ::init() instead of the
	constructor.
	* testsuite/libamf.all/test_el.cpp: Dump the element too.
	* libamf/element.{cpp,h}: Add a dump() method.

2008-01-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

        * gui/gui.cpp: add messages for unimplemented fullscreen.
        * gui/gtk.cpp: cleanup, comment out tree display (we don't need two
          of the same thing for the release).

2008-01-05 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: check that a textfield
	  object is a listener of itself.
	* server/as_value.cpp: make soft references verbosity a compile-time
	  option.

2008-01-05 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (setPropFlags): fix infinite loop while setting
	  flags to comma-separated prop strings.
	* server/asobj/LoadVars.cpp: cleanup VM accesses to not rely on the
	  singleton.
	* testsuite/Makefile.am: remove tmpSharedObject on make clean.
	* libamf/sol.cpp (SOL::readFile): revert the fix to magic number
	  consistency, it really seems it's us failign to swap bytes
	  when writing it.

2008-01-05 Sandro Santilli <strk@keybit.net>

	* libamf/sol.cpp (SOL::readFile): fix magic number consistency
	  check.
	* testsuite/: Makefile.am, gnashrc.in: allow read-write access
	  to SOL under the testsuite directory.
	* testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test set SOLSafeDir
	  and SOLReadOnly directives.
	* testsuite/actionscript.all/SharedObject.as: fix the testcase's
	  expected result.
	* server/asobj/ClassHierarchy.cpp: make NetConnection available
	  starting at SWF6.
	* testsuite/actionscript.all/NetConnection.as: fix testcase.

2008-01-05 Sandro Santilli <strk@keybit.net>

	* testsuite/DummyMovieDefinition.h: set a fake url for the dummy
	  definition, or VM initialization would abort.
	* server/asobj/LocalConnection.{cpp,h}: allow build to complete.

2008-01-04  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/LocalConnection.cpp: A mostly implemented
	LocalConnection class.
	
	* testsuite/actionscript.all/SharedObject.as: Use a multi level
	path.
	* testsuite/actionscript.all/NetConnection.as: Use check.a
	sinstead of dejagnu.as.
	* testsuite/actionscript.all/Makefile.am: Add libamf to the
	include paths.

	* server/asobj/SharedObject.cpp: Use Element::init() instead of
	constructing, as it appears to have problems with some gcc
	versions. This fixes the SharedObject.as test case.

2008-01-05 Sandro Santilli <strk@keybit.net>

	* server/vm/VM.{cpp,h}: add getSWFUrl() method to fetch
	  url of originating movie in a reliable way.
	* server/URLAccessManager.cpp (local_check): don't assume
	  the movie_root always has an instance of originating if
	  the VM is initialized (fixes a race condition).
	* server/asobj/SharedObject.cpp: use the new VM::getSWFUrl() method
	  to figure out domain for .sol files (simplifies the code).

2008-01-04  Rob Savoye  <rob@ripple.welcomehome.org>

	* libamf/sol.cpp: Properly caluculate the filesize.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* plugin/Makefile.am: drop useless install/uninstall rules,
	  automatically provided by automake.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* plugin/klash/Makefile.am: actually drop all install rules,
	  automake does a perfect job at it.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* plugin/klash/Makefile.am: don't quote installation paths, or
	  ~ would not be interpreted by mkdir_p as $HOME. Use DESTDIR
	  for the kde service too, and create the dir if non existing.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* server/URLAccessManager.cpp (local_check): don't use base url
	  (-U) to tell apart local movies from remote ones, as base url
	  is web-author-forgeable ('base' attribute).
	  Use non web-author-forgeable virtual url of starting movie
	  instead (-u).
	  Skip the "forbid load of local resources by network movie"
	  check if no starting movie exists yet (to allow loading a local
	  file pretending it was a remote one).
	  Should fix bug #21930 and allow more flexibility.
	* Makefile.am: install plugins under /tmp/ during 'distcheck'.
	  (we can do something a bit smarter, but it's a start).
	* doc/C/usermanual/installation/custompath_configuration.xml:
	  Document --with-kde-pluginprefix configure switch.

2008-01-04 Fredrik Johansson <fredrik@mumme.se>

	* configure.ac, plugin/klash/Makefile.am: 
	  add --with-kde-pluginprefix configure switch.
	  See bug #21907.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (beginGradientFill): 
	  Improvements in non-boxed matrixType use, comments
	  about future improvements.

2008-01-04 Sandro Santilli <strk@keybit.net>

	* testsuite/server/MatrixTest.cpp: add a test
	  for transforming a couple of points using
	  a translate + scale approach. This is the
	  way we should transform radial gradients
	  for beginGradientFill, probably optimizable
	  but helpful for understanding it.

2008-01-03 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (beginGradientFill): 
	  Improvements in "box" matrixType parsing.
	  Still not 100% correct, but translation and scaling
	  seem good, and rotation does have an effect.
	  The problem is that translation/scaling and rotation
	  is happening in the wrong order.

2008-01-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

        * gui/gui.{h,cpp}: ^F toggles fullscreen (not in the plugin - no shortcuts work
          here). Add toggleFullscreen() to avoid code duplication.
        * gui/gtk.cpp: hide menu bar for fullscreen in standalone player.

2008-01-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

        * gui/gui.{cpp,h}: add setFullscreen(), unsetFullscreen() and
          _isFullscreen flag as virtual methods. At present only available
          as a menu toggle in the GTK GUI.
        * gui/gtk{.cpp,sup.h}: implement fullscreen for GTK. It works
          more or less for the plugin and standalone except that the
          size and/or dimensions are often wrong, most notably for youtube.

2008-01-03 Sandro Santilli <strk@keybit.net>

	* server/fill_style.cpp (sample_gradient): if no gradients
	  are defined return the black color. Fixes an assertion failure
	  on malformed or as-defined gradientrecord-less linear grads.

2008-01-02 Sandro Santilli <strk@keybit.net>

	* server/DynamicShape.{cpp,h},
	  server/fill_style.{cpp,h}, server/matrix.h,
	  server/sprite_instance.{cpp,h}:
	  Draft beginGradientFill support. Almost works, just
	  needs to get the matrix argument right ...

2008-01-02 Sandro Santilli <strk@keybit.net>

	* server/fill_style.cpp, server/font.cpp,
	  server/impl.cpp, server/parser/movie_def_impl.{cpp,h},
	  server/parser/movie_definition.h, server/swf/tag_loaders.cpp:
	  Remove obsoleted get_create_bitmaps and get_create_font_shapes
	  methods of movie_definition.

2008-01-02 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/installation/custompath_configuration.xml:
	  Document new KDE switches.

2008-01-02 Fredrik Johansson <fredrik@mumme.se>

	* Makefile.am, configure.ac, plugin/klash/Makefile.am:
	  Add --with-kde-appsdatadir and --with-kde-configdir switches.
	  (see bug #21907)

2008-01-02 Sandro Santilli <strk@keybit.net>

	* backend/: render_handler.h, render_handler_d3d.cpp,
	  render_handler_xbox.cpp: remove last references to the
	  triangulating render handler.

2008-01-01 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fb.cpp: Limit calls to notify_mouse_moved(), process
	  more events at once (8 -> 100 max)	

2008-01-01 Sandro Santilli <strk@keybit.net>

	* libamf/element.{cpp,h}: improve const correctness.
	* server/asobj/SharedObject.cpp: drop useless const_casts.

2008-01-01 Sandro Santilli <strk@keybit.net>

	* server/asobj/SharedObject.cpp (sharedobject_getlocal):
	  Use URL of first movie loaded, not base url, for security:
	  base url can be set arbitrarily by publishers.
	  Still use second argument if more then 2 are given (this
	  is standard behaviour, not tested specifically).

2007-12-31  Rob Savoye  <rob@ripple.welcomehome.org>

	* libbase/shm.{cpp,h}: Move from server directory.
	* libbase/Makefile.am: Build Shm class here.
	* server/shm.{cpp,h}: Move to libbase directory.
	* sever/Makefile.am: Don't build Shm class here.

2007-12-30  Rob Savoye  <rob@ripple.welcomehome.org>

	* libamf/sol.cpp: Various tweaks for 64bit big-endian systems,
	namely the ppc in a G5 or PS3.

	* utilities/dumpshm.cpp: Don't use ipc_perm if the __key field
	doesn't exist.

	* server/asobj/SharedObject.cpp: Handle the second argument to
	getLocal() correctly, which doesn't add either the domain nor the
	swf file name. Fixes the Shared Object part of #21377, which now
	gets to the next frame.
	* libamf/element.{cpp,h}: Add a few constructors that take a
	std::string argument for the name.
	* libamf/sol.cpp: Remove bogus error message.
	
	* server/asobj/SharedObject.cpp: Use Element class instead of
	amf_element_t everywhere. 
	
	* libamf/element.{cpp,h}: New Element class to represent an AMF
	element. 
	* libamf/Makefile.am: Add element.{cpp,h}, and lcshm.{cpp,h}.
	* libamf/amf.{cpp,h}: Use Element class instead of amf_element_t
	everywhere. Move object types to element.h. Refactor all encoders
	and decoders. Ifdef out for now stuff that should really be in
	rtmp.
	* libamf/lcshm.{cpp,h}: Use Element class instead of amf_element_t
	everywhere. 
	* libamf/sol.{cpp,h}: Use Element class instead of amf_element_t
	everywhere. Use new style encoders and decoders.
	* testsuite/libamf.all/Makefile.am: Add new test_el test case for
	testing the Element class.
	* testsuite/libamf.all/test_sol.cpp: Use Element class instead of
	amf_element_t everywhere. Use new style encoders and decoders.
	
	* libamf/lcshm.{cpp,h}: New LcShm class for manipulating AMF
	objects as used within LocalConnection shared memory segments.

2007-12-30 Sandro Santilli <strk@keybit.net>

	* configure.ac,
	  doc/C/usermanual/installation/custompath_configuration.xml:
	  Fallback to old installation path for kparts plugin if kde-config
	  is not found. Document defaults for both kparts and npapi
	  plugins.

2007-12-30 Sandro Santilli <strk@keybit.net>

	* Makefile.am, configure.ac: add --with-kde-plugindir
	  and --with-kde-servicesdir options.
	* doc/C/usermanual/installation/: custompath_configuration.xml,
	  feature_configuration.xml: document new kparts options and cleanup
	  info about the npapi plugin a bit.
	* macros/firefox.m4: use the NPAPI acronym when referring to the
	  formerly known as "Firefox" plugin.
	* plugin/klash/Makefile.am: use kparts installation patsh as detected
	  or specified by user at configure time.

2007-12-29  Rob Savoye  <rob@ripple.welcomehome.org>

	* utilities/dumpshm.cpp: Add support to search through all sysv
	style shared memory segments and look for the LocalConnection
	one so the user doesn't have to know anything to find it.
	* configure.ac: Add test for the key field of ipc_perm data
	structure used by shmctl() to get the key.

	* testsuite/misc-swfc.all/Makefile.am: Add TEST_CASES to
	CLEANFILES.

2007-12-29 Sandro Santilli <strk@keybit.net>

	* server/: BevelFilter.h, BitmapFilter.h,
	  BlurFilter.h, ColorMatrixFilter.h, ConvolutionFilter.h,
	  DropShadowFilter.h, GlowFilter.h, GradientBevelFilter.h,
	  GradientGlowFilter.h, cxform.{cpp,h}, matrix.{cpp,h},
	  parser/filter_factory.{cpp,h}:
	  Change interfaces to take gnash::stream
	  by ref rather then by pointer.
	* server/parser/action_buffer.{cpp,h}: add a movie_definition
	  reference in code segments, and provide a getDefinitionURL()
	  method to retrive the originating url.
	* server/parser/button_character_def.{cpp,h}, 
	  server/swf/DoActionTag.h, server/swf/DoInitActionTag.h,
	  server/swf/PlaceObject2Tag.{h,cpp}:
	  Properly construct action_buffer by passing originating movie
	  definition.

2007-12-29 Sandro Santilli <strk@keybit.net>

	* plugin/klash/Makefile.am: use kde-config to find install
	  system dirs for kde plugin. 
	* testsuite/MovieTester.cpp: allow loading initial movie
	  (local sandboxes..)
	* utilities/processor.cpp: add main movie base dir
	  to local sandboxes, or gprocessor won't be able to 
	  play anything not explicitly in the sandboxes list.

2007-12-28 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/usage/gnashrc.xml: update info about
	  localSandboxPath directive.
	* gui/Player.cpp, server/impl.cpp: don't add the "base url"
	  of the movie to the local sandboxes list, since it may be
	  set by HTML tags attribute (think base=/).
	  Instead, add the basedir of the actual filename loaded.
	  This might be /tmp for konqueror plugin, or none for npapi
	  plugin (loads from stdin). Using the basedir helps testing
	  where you have required data in the same dir of the main
	  movie. -u, -U, -P base=x do not modify the local sandbox
	  paths anymore.

2007-12-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

        * libamf/sol.cpp: use correct delete[].

2007-12-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

        * libbase/rc.cpp: fix lld format.
        * doc/C/usermanual/usage/gnashrc.xml: document flashSystemOS,
          flashSystemManufacturer, SOLSafeDir, SOLReadOnly.

2007-12-26  Rob Savoye  <rob@ripple.welcomehome.org>

	* testsuite/misc-swfc.all/Makefile.am: Use SUFFIXES so the
	translation rule works. Use $(SANE_SCTESTS_OUT) instead of the
	bogus *.swf.

2007-12-26 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetConnection.cpp: implement NetConnection.isConnected
	* testsuite/actionscript.all/NetConnection.as: first pass of cleanup,
	  lots to be done still...

2007-12-26 Sandro Santilli <strk@keybit.net>

	* libbase/rc.{cpp,h}: add support for an urlOpenerFormat directive.
	* server/vm/ASHandlers.cpp (CommonGetUrl): use new
	  RcInitFile::geURLOpenerFormat() method to obtain command to
	  use for opening an external url. See bug #21155.
	* doc/C/usermanual/usage/gnashrc.xml: document new urlOpenerFormat
	  directive.
	* testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test urlOpenerFormat
	  directive.

2007-12-26 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (format_text): don't truncate
	  or word-wrap long lines if autoSize is on.

2007-12-26 Sandro Santilli <strk@keybit.net>

	* server/: movie_instance.cpp, sprite_instance.{cpp,h}:
	  Implement _lockroot
	* testsuite/actionscript.all/: MovieClip.as, MovieClipLoader.as:
	  Update expected results.

2007-12-26 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/gen_run_swfdec_testsuite.sh: skip tests requiring
	  user interaction (see task #7556).
	* testsuite/actionscript.all/MovieClip.as: add test for _lockroot
	  location.
	* server/: sprite_instance.cpp, as_environment.cpp,
	  namedStrings.{cpp,h}:
	  Add PROP_uROOT and PROP_uGLOBAL

2007-12-25  Rob Savoye  <rob@ripple.welcomehome.org>

	* configure.ac: Add new security settings.
	
	* libbase/rc.{cpp,h}: Add new security options for Shared Objects
	and Local Connections. Make extractNumber() return a uint32_t
	intead of just an int as we keep overflowing strtol().
	* server/asobj/SharedObject.cpp: Use new security options for
	files. Return null for strings instead of undefined.

2007-12-25 Sandro Santilli <strk@keybit.net>

	* server/asobj/MovieClipLoader.cpp: remove dead code.
	* testsuite/actionscript.all/MovieClipLoader.as: add test for
	  _lockroot.

2007-12-25 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/movie_root.cpp: flushHigherPriorityActionQueues(), only flush when
	  we are processing an actions queue; notify_key_listeners(),notify_mouse_listeners(),
	  executeTimers, process queued actions after finish all event handlers.
	* testsuite/misc-ming.all/key_event_test.c,
	  testsuite/misc-swfc.all/gotoFrameFromInterval.sc, gotoFrameFromInterval2.sc:
	  xchecks to checks.
	  
2007-12-24  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/SharedObject.cpp: Include cerrno.
	* libamf/sol.cpp: Include cerrno.
	* configure.ac: Add --with-shm= option to specify whether to use
	POSIX named shared memory or the older SYSV shared memory for
	compatibility. Look for the remap() function in libc.

2007-12-24 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h}: callMethod with 4 args..
	* server/asobj/MovieClipLoader.cpp: dispatch events to all listeners,
	  not just self. Fixes bug #21881.
	* testsuite/actionscript.all/MovieClipLoader.as: test that a
	  MovieClipLoader instance is a listener of self.

2007-12-24 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_member): use get_root() to evaluate
	  the _root member. This is to get relative url rather then absolute,
	  more correct in swf6 and should be easier to handle _lockroot for
	  SWF7.
	* testsuite/misc-mtasc.all/level99.as: add test for "_root" and
	  '/path' resolution in levels.

2007-12-24 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/as_value.{h, cpp}: ~as_value(), don't inline the destructor.
	* server/as_environment.{h, cpp}: popCallFrame(), don't inline this function.
	  fix the 'link once' problem here with -O2 option.
	
2007-12-24 Markus Gothe <nietzsche@lysator.liu.se>

	* Santa Claus is coming to town.
	* libbase/utility.h: Fixed isfinte -> std::isfinite. Fixes building issue on OS X Leopard.

2007-12-23 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DragDropTest.as: add eval(_droptarget)
	  tests.

2007-12-23 Sandro Santilli <strk@keybit.net>

	* server/dlist.h: const version of visitBackward.
	* server/character.h: add virtual findDropTarget method.
	* server/character.cpp (computeTargetPath): include _levelX prefix
	  when topmost movie is not _level0.
	* server/movie_root.{cpp,h}: if a character is being dragged
	  find it's current _droptarget on mouse move.
	* server/sprite_instance.{cpp,h}: implement findDropTarget.
	* testsuite/misc-ming.all/DragDropTest.as: no more failures.
	* testsuite/misc-mtasc.all/: level5.as, level99.as:
	  add test for _target member of clips inside _level#.

2007-12-23 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClipLoader.as: stop() before
	  invoking the tests chaing. This is to workaround bogus blocking
	  MovieClipLoader.loadClip of Gnash.
	* utilities/dumpshm.cpp: ISO C++ forbids variable-size array 'buf'
	  (unused, btw)

2007-12-22  Rob Savoye  <rob@ripple.welcomehome.org>

	* utilities/dumpshm.cpp: Add support to dump LocalConnection files
	if they live in the older SYSV memory segments, instead of the
	more modern POSIX style.

2007-12-21 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* extensions/fileio/fileio.{h,cpp}: Implement asyncmode() so that the
	  extension can be used with device drivers. Fix fgetc() to return
	  a valid string.

2007-12-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: DragDropTest.as,
	  DragDropTestRunner.cpp: improved the test to verify
	  persistance of _droptarget after stopDrag().

2007-12-21 Sandro Santilli <strk@keybit.net>

	* server/as_object.h: provide const versions of to_movie()
	  and to_character().
	* testsuite/misc-ming.all/DragDropTest.as: fix expected
	  results.
	* testsuite/misc-ming.all/: Makefile.am, DragDropTestRunner.cpp:
	  Implemented test runner for DragDropTest.swf and enabled it.

2007-12-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: Makefile.am, DragDropTest.as:
	  Self-explaining testcase for _droptarget. Requires user
	  interaction so will need a MovieTester based runner to
	  be automated. Pretty nice test, give it a try ;P

2007-12-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_startDrag): get the bounding box
	  arguments right.

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/MovieClipLoader.cpp: don't abort if getProgress
	  is called w/out an argument, make the members of returned object
	  enumerable.
	* testsuite/actionscript.all/MovieClipLoader.as: test
	  MovieClipLoader.getProgress.

2007-12-20  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/SharedObject.cpp: Use the domain name as part of the
	path for the .sol files. This avoids name collision. Create all
	the directory components in the path name if they don't exist.
	
2007-12-20 Sandro Santilli <strk@keybit.net>

	* libbase/LoadThread.h: add warnings about getBytesTotal() use
	  and a call for better documenting current behaviour.
	* server/asobj/xml.cpp (checkLoad): drop the assertion completely
	  and substitute with a check & log_debug. The assertion was
	  about LoadThread::getBytesTotal() returning a number which would
	  be fully available for a singleLoadThread::read() to consume...

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.cpp (checkLoad): fixed typo in an assertion.

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/xmlnode.cpp: make XMLNode.attributes
	  members enumerable.
	* testsuite/actionscript.all/XML.as: test enumerability
	  of XMLNode.attributes.

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/xmlnode.cpp: attributes are note instances
	  of Object class.
	* testsuite/actionscript.all/XML.as: few more fixes.

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.{cpp,h}: don't abort on XML.load() [ no args ].
	  Engage a thread for each load request.
	* testsuite/actionscript.all/XML.as: the test is now sane, and
	  have few more successes.
	* libbase/LoadThread.{cpp,h}: (setupCache) fix current position
	  and _completed computation, (reset) join thread.

2007-12-20  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/SharedObject.cpp: Make less verbose, don't dump
	members after reading.
	* libamf/amf.cpp: Check for a corrupted length field so we don't
	try to memcpy() an obscene amount of data... 
	* libamf/sol.cpp: Handle an error from trying to parse corrupted
	.sol files so we don't core dump.
	* testsuite/actionscript.all/SharedObject.as: Test the new values
	against the previous ones we just wrote.
	
	* server/asobj/SharedObject.cpp: Get rcinit file, and use the
	SOLSafeDir setting, or defaul tto "./", for all SOL file
	locations. This now can both write and read SOL files.
	* testsuite/actionscript.all/SharedObject.as: Test for the values
	gotten from the SOL file so we know we parsed it correctly.
	* libamf/amf.cpp: Don't swap numbers twice.
	* libamf/sol.cpp: Don't swap numbers when dumping, they should be
	in the correct byte order by default.

2007-12-20 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/XML.as:
	  Cleanup the test to actually check calls to onLoad handler.
	  Gnash is failing, and I didn't bother to use xcheck as I plan
	  to do more work on it later.

2007-12-20 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fbsup.h, gui/fb.cpp: Calculate rowsize from virtual resolution
	  instead from visible resolution   

2007-12-20 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp: implement callMethod taking 3 args.
	* server/asobj/MovieClipLoader.cpp: cleanup interfaces, send
	  all required events (altought still not in async mode).
	* testsuite/actionscript.all/MovieClipLoader.as: test events
	  execution.

2007-12-19  Rob Savoye  <rob@ripple.welcomehome.org>

	* utilities/soldumper: Dump the contents of any .sol file. Useful
	to know what's being stored about you in binary files.
	* utilities/Makefile.am: Add soldumper.

2007-12-19 Sandro Santilli <strk@keybit.net>

	* server/asobj/SharedObject.cpp: make SharedObject.flush more
	  robust, reduce string_table lookups in PropsSerializer, cleanup
	  class initialization and SharedObject constructor.
	* libamf/amf.{cpp,h} (createElement): take element names by
	  const refs.

2007-12-19 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: turn SpriteProxy to a generic
	  CharacterProxy, keep all characters by soft-refs.
	* server/character.h: expose a getOrigTarget and provide
	  a saveOriginalTarget to subclasses intended to be called by
	  stage placement callbacks.
	* server/button_character_instance.cpp, server/movie_instance.cpp,
	  server/sprite_instance.{cpp,h}, video_stream_instance.cpp:
	  Call saveOriginalTarget from the overridden stagePlacementCallback.
	* testsuite/DummyCharacter.h, testsuite/server/DisplayListTest.cpp:
	  make DummyCharacter take a 'parent' argument, to avoid failing
	  an assertion in getTarget checking for characters with no parent
	  to be in effect of the movie_instance class of derivates.
	* testsuite/server/Makefile.am: don't let failures in server
	  testsuite interrupt the check run.
	* testsuite/simple.exp: comment units of the timeout
	* testsuite/actionscript.all/TextField.as: soft-ref tests succeed.

2007-12-19  Rob Savoye  <rob@ripple.welcomehome.org>

	* server/asobj/SharedObject.cpp: Add handler for properties
	visitor function. Handle "undefined" values when encoding into
	AMF. Fixes #21848.
	* libamf/amf.cpp: Comment out function traces.
	* libamf/sol.cpp: Trap undefiend filespec.

2007-12-19 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}:
	  implement removeTextField().
	* testsuite/actionscript.all/TextField.as: update expected
	  results (2 xpass, 2 fail - used to suceed by luck).

2007-12-19 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add tests for
	  TextField soft references (unimplemented in Gnash).

2007-12-19 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp: implement getDepth()
	* server/sprite_instance.cpp make createTextField more
	  tolerant and correct about parameters.
	* testsuite/actionscript.all/TextField.as: add more 
	  createTextField tests (uhm.. should be in MovieClip.as)
	  and a getDepth one.

2007-12-18  Rob Savoye  <rob@ripple.welcomehome.org>

	* testsuite/actionscript.all/SharedObject.as: Test creating a .sol
	file and reading it back in. This test is still somewhat bogus, as
	it mostly just makes sure everything exists.
	
	* libamf/sol.h: Add overloaded writeFile with no args that uses
	only private data. Add accessors for filespec and the object
	name. 
	* server/asobj/SharedObject.{cpp,h}: Add support for
	PropertyLists. Implement flush, getLocal, and getSize().

2007-12-18 Sandro Santilli <strk@keybit.net>

	* server/array.cpp (array_new): drop an absurdly complex and unneeded
	  round trip to set initial array size. Makes PlanarityBig5 go to
	  level 15 in a second or two. See
	  http://wiki.gnashdev.org/wiki/index.php/PlanarityProfile.

2007-12-18 Sandro Santilli <strk@keybit.net>

	* server/array.cpp: slightly reduced string_table::find calls.
	* server/as_object.{h,cpp}: rename visitProperties to
	  visitPropertyValues, use it from copyProperties.

2007-12-18 Sandro Santilli <strk@keybit.net>

	* server/as_object.h: add a visitProperties templated method.
	* server/edit_text_character.{cpp,h}: allow TextField.variable
	  to point to a normal object, not fully correct yet but a minimal
	  step forward.
	* testsuite/actionscript.all/TextField.as: 2 small successes.

2007-12-18 Sandro Santilli <strk@keybit.net>

	* doc/C/extensions.xml: gave a review of how to create extensions.
	  Should be a currently correct way of doing it.
	* server/character.cpp (destroy): make sure to set the _unloaded
	  flag to avoid leaks (Fixes bug #21842).

2007-12-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}: add settings to gnashrc. Override
	  System.capabilities.os: "set flashSystemOS The OS SUPER PREMIUM
	  EDITION";
	  Override System.capabilities.manufacturer: "set flashSystemManufacturer
	  Gnash Linux";
	  Maximum movie library size: "set movieLibraryLimit 3"
	  (defaults to 8, not yet used).
	
2007-12-18 Sandro Santilli <strk@keybit.net>

	* gui/gtk.cpp (run): set interval timeout here rather then on
	  set_interval, and advance once before that. This drops the
	  annoying FPS-based delay on start.

2007-12-18 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/impl.cpp: limit media library size to 8 entries and keep 
	  track of cache hits
	  
2007-12-18 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add a test and check total
	  tests run.
	* configure.ac: point to AGG website when warning about old version.
	* testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c:
	  Found out the "toString not invoked" was a bogus deduction.
	  Added checking of total tests run.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: test maxChars having
	  no effect on code-assigned text.
	* server/as_environment.h: drop obsoleted interfaces.

2007-12-17  Rob Savoye  <rob@ripple.welcomehome.org>

	* cygnal/testsuite/cygnal.all/Makefile.am: Add server to include
	paths.
	* libamf/amf.{cpp,h}: Include as_object.h. Don't make swapBytes()
	static,	we want to use it elsewhere. Add methods for creating
	elements, and encoding elements.
	* libamf/sol.cpp: Store elements in a vactor as they get
	added. Format a header for a .sol file. Write a SOL object to disk
	as an .sol file.
	* libamf/sol.h: Use boost cstdint.hpp instead of homegrown
	typedefs. Write a SOL object to disk as an .sol file.
	* testsuite/libamf.all/test_sol.cpp: Include as_object.h. Create
	an output file and test all it's elements.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.cpp: don't be noisy about overriding
	  dictionary.
	* gui/gui.cpp, server/movie_root.{cpp,h}, testsuite/MovieTester.cpp,
	  utilities/processor.cpp: drop argument from movie_root::advance.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* server/as_environment.h: drop push_val, make push non-templated
	  and taking an as_value. I belive this drops a copy-construction
	  of as_value for every push use ...
	* extensions/gtk2/gtkext.cpp, server/as_function.cpp,
	  server/asobj/NetStream.cpp, server/vm/ASHandlers.cpp: replace
	  the few push_val calls with push.

2007-12-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* plugin/plugin.cpp: change NPAPI error messages so as not to
	  annoy Opera users (doesn't make it work on Opera, unfortunately),
	  general code cleanup.
	* plugin/plugin.cpp (second commit): more cleanup.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* server/asobj/: Sound.{cpp,h}, SoundFfmpeg.{cpp,h},
	  SoundGst.{cpp,h}: don't copy the string passed to loadSound.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* testsuite/libamf.all/test_object.cpp: ISO C++ forbids variable-size
	  arrays (-pedantic).

2007-12-17 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.{cpp,h}: use a manual clock, to make
	  time predictable. Expose an additional advanceClock method
	  to control it (one way)
	* testsuite/misc-ming.all/intervalTestRunner.cpp: use advanceClock
	  instead of unpredictable usleep() calls.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/case.as: fix testcase, add test for
	  .length.

2007-12-17 Sandro Santilli <strk@keybit.net>

	* gui/: gtk.cpp, gtksup.h: grab focus on click.
	  Fixes bug #21808. Thanks Benjamin Wolsey for research
	  on the topic.

2007-12-17 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/new_child_in_unload_test.c, Makefile.am:
	  new test for inspecting ::destroy(). We may want to destroy an character
	  that is not unloaded.
	* server/character.cpp: remove the assertion in charcter::destroy(),
	  it's not correct as tests confirmed.
	  
2007-12-16 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionImplementsOp):
	  Don't assume values found on stack are all functions.
	  Fixes bug #21811.

2007-12-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/Player.cpp: allow setting base URL with -P (to support 
	  <embed base="myurl"> tag; move parsing of flashvars and query
	  string before the base URL gets set.

2007-12-15  Rob Savoye  <rob@ripple.welcomehome.org>

	* testsuite/libamf.all/test_sol.cpp: When reading a SOL file,
	test for multiple elements of varying data types.
	* testsuite/libamf.all/Makefile.am: rather than generate the .sol
	files, these are now checked in, so we don't havwe to build them.
	
2007-12-15 Sandro Santilli <strk@keybit.net>

	* testsuite/Makefile.am: fix abs_mediadir for gnashrc generation.
	* testsuite/misc-swfmill.all/initaction_in_definesprite.xml:
	  more automation, and more to do.

2007-12-14  Rob Savoye  <rob@ripple.welcomehome.org>
	
	* libamf/sol.{cpp,h}: New files for Shared Object file support.
	* libamf/Makefile.am: Build sol into libamf.
	* libamf/amf.{cpp,h}: Use cstdint for data types.
	* libamf/protocol.h: Define an enum for protocols supported.
	* testsuite/libamf.all/Makefile.am: Add test_sol. Build	.sol files
	from XML.
	* testsuite/libamf.all/test_*.cpp: Use cstdint for data types.
	* testsuite/libamf.all/settings.sol: 
	* testsuite/libamf.all/xmlfiles: Directory for xml files to
	recreate .sol files.
	* testsuite/libamf.all/xmlfiles/array.xml, date.xml, number.xml,
	settings.xml, test.xml, xml.xml, boolean.xml, null.xml,
	object.xml, string.xml, undefined.xml: New XML files to generate
	.sol files using s2x.py.
	* testsuite/libamf.all/solfiles/array.sol, date.sol, number.sol,
	settings.sol, test.sol, boolean.sol, null.sol,
	object.sol, string.sol, undefined.sol: New binary SOL files for
	testcases.
	* testsuite/libamf.all/test_sol.cpp: Test case for SOL support.
	* configure.ac: Look for python so we can use it for testing.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp: immediately store bitmap_character_def
	  instances into an instrusive_ptr to make add_bitmap_character_def
	  calls safe. Should fix bug #21377.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp: fix compiler warnings,
	  one of which about possible use of uninitialized value...

2007-12-14 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}, 
	  server/parser/movie_def_impl.{cpp,h},
	  server/parser/movie_definition.h,
	  server/parser/sprite_definition.h:
	  Remove dead init actions code. 

2007-12-14 Sandro Santilli <strk@keybit.net>

	* gui/gui.cpp, server/as_environment.cpp, server/as_value.cpp,
	  server/character.cpp, server/character.h,
	  server/movie_instance.cpp, server/movie_instance.h,
	  server/movie_root.h, server/sprite_instance.cpp,
	  server/sprite_instance.h, server/swf_function.cpp,
	  server/asobj/Object.cpp, server/vm/ASHandlers.cpp:
	  Drop duplicated character::get_root_movie(), which does the same as
	  character::get_root(); drop movie_root::get_root_movie, use the
	  new getRootMovie name.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* server/swf/DoInitActionTag.h: store referenced character
	  in the instance, pass to execute_init_actions when
	  executing; add self as a normal control tag.
	* server/movie_instance.h: maintain a set of 'initialized'
	  characters (characters referenced by executed DoInitAction
	  tags).
	* server/sprite_instance.{cpp,h} (execute_init_action):
	  update the movie_instance maintained set of initialized
	  characters and use that set to figure out whether or not
	  to execute them again.
	* testsuite/misc-swfmill.all/Makefile.am: expect a success
	  for initaction in definesprite test.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/: Makefile.am,
	  initaction_in_definesprite.xml: test that DOINITACTION
	  tags in sprite definitions are valid, and that whether or
	  not an INITACTION tag was executed should be registered
	  in the definition being referenced.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* server/stream.cpp (read): don't allow block reads to cross
	  tag boundaries.

2007-12-14 Sandro Santilli <strk@keybit.net>

	* libmedia/FLVParser.h: drop comma at end of enumerator list
	* server/swf/tag_loaders.cpp: provide a 'tell' function to
	  StreamAdapter. 
	* libbase/jpeg.{cpp,h}: get a max header bytes parameter to limit
	  input stream. Currently only used to skip a 0-sized header
	  while still allowing further parsing of DEFINEBITS tag.
	* server/swf/tag_loaders.cpp: pass max header bytes when parsing
	  JPEGTABLES. Fixes the 0-length JPEGTABLES tag (missing a testcase).

2007-12-14 Sandro Santilli <strk@keybit.net>

	* testsuite/movies.all/Makefile.am: don't abort on failure.
	  
2007-12-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/SoundFfmpeg.cpp: fix a segfault in getPosition()
	  when no audio stream is found.

2007-12-14 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/runtime_vm_stack_test.c, Makefile.am:
	  new test for inspecting runtime vm stack.
	  
2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/parser/button_character_def.{cpp,h}: don't leak
	  button action buffers.
	* server/button_character_instance.cpp: update access to
	  button actions (needs more isolation work).

2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/Property.h: always initialize mOrderId, which is used
	  as the key for secondary multi_index in PropertyList.
	  Seems to fix the infamous conditional jumps based on uninitialized
	  values and with it the occasional assertion failure.
	  See bug #21783.

2007-12-13  Rob Savoye  <rob@ripple.welcomehome.org>

	* cygnal/http.h: Rename getFileType() to getFileStats()
	* cygnal/http.cpp: Set the file size right so it works with all
	browsers.
	* cygnal/cygnal.cpp: Use getFileStats() instead of getFileType().

	* cygnal/cygnal.cpp: Check the file type to set the HTTP
	Content-Tytpe field correctly. Also handle "file not found".
	* cygnal/http.cpp: Trap file not found errors. Format responses
	correctly, including a 404 error. Make all fields with multiple
	values an array.
	* cygnal/http.h: Add an ERROR for file type. Stash the message
	body and filesize as private data.
	* cygnal/testsuite/cygnal.all/test_crc.cpp: Use the global LogFile
	instance so verbosity works.
	* cygnal/testsuite/cygnal.all/test_http.cpp: Use the global
	LogFile instance so verbosity works. Test responses.

2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/PropertyList.cpp (addGetterSetter): since the function
	  always returns true, which by documentation means the property
	  was successfully added, this patch adds an assertion checking
	  that the just-added property can be successfully looked up.
	  This assertion seems to fail, so the commit makes Gnash less
	  robust, but hopefully helps fixing the bug which we keep
	  occasionally finding. Over here, I can trigger failure of that
	  assertion by running testsuite/misc-ming.all/loop_test-Runner
	  (but oddly enough not playing loop_test.swf using Gnash).

2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.cpp (readDefineVideoFrame): fix
	  log_debug call (missing params).
	* backend/render_handler_agg.cpp, libbase/string_table.h,
	  server/Property.{cpp,h}, server/PropertyList.{cpp,h},
	  server/parser/abc_block.{cpp,h}:
	  Fix -pedantic errors, make sure PropertyList always initialize
	  all members. Unfortunately, this doesn't fix the valgrind-reported
	  conditional jumps based on uninitialized memory.

2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (jpeg_tables_loader): don't limit
	  StreamAdapter input as the *same* jpeg loader will be used
	  to parse subsequent tags. This reintroduces possible seek-backs
	  but fixes regressions in elvis.swf and strip.swf (bug #21786).
	  We'll need to rethink the robustness issue for jpeg loading.

2007-12-13 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.{cpp,h}: drop readFullTag(),
	  get additional arg to read() to limit input stream.
	* server/parser/button_character_def.{cpp,h}: limit input
	  stream while reading button_actions.
	* server/swf/: DoActionTag.h, DoInitActionTag.h,
	  PlaceObject2Tag.cpp: update calls to action_buffer parser.

2007-12-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/Global.cpp: put return in updateAfterEvent();

2007-12-13 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/System.as: serverString exists now.

2007-12-13 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/asobj/Global.cpp: as_global_parseint(), ignore more leading
	  characters.
	
2007-12-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/URL.{h,cpp}: add another encode() function to return
	  a new escaped string.
	* server/asobj/System.cpp: implement capabilities.serverString.

2007-12-12  Rob Savoye  <rob@ripple.welcomehome.org>

	* cygnal/http.{cpp,h}: Extract the fields with multiple values
	into arrays, instead of just extracting the whole string.
	* cygnal/testsuite/cygnal.all/test_http.cpp: Test for multiple
	values in HTTP header fields.
	
2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/parser/button_character_def.cpp (readDefineButton2):
	  don't attempt to read button actions if there are none..

2007-12-12  Rob Savoye  <rob@ripple.welcomehome.org>
	
	* configure.ac: Disable LIRC by default. Link cygnalrc test file
	to copy in source tree.
	* libbase/rc.h: Add new accessors so we can set private data from
	a derived class. Make constructor/destructor protected instead of
	private.
	* cygnal/crc.{cpp,h}: Cygnal specific init file derived from Gnash
	RcInitFile to avoid bloating out Gnash's init file handling for
	options it'll never use, but also let Cygnal share those values,
	or override them.
	* cygnal/Makefile.am: Add crc.cpp and crc.h.
	* cygnal/cygnal.cpp: Use new init file. Clean up port offset
	handling.
	* cygnal/testsuite/cygnal.all/cygnalrc.in: Test cygnal init file.
	* cygnal/testsuite/cygnal.all/test_crc.cpp: Test the Cygnal init
	file handling.
	* cygnal/testsuite/cygnal.all/Makefile.am: Add test_crc target.

2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/parser/button_character_def.{cpp,h}: cleanup parser by 
	  splitting DEFINEBUTTON, DEFINEBUTTON2 and DEFINEBUTTONSOUND
	  reading functions. Added a boundary arg to button_record parser
	  to avoid reading out of bounds (with side-effect of reducing
	  seek-back need)

2007-12-12 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/System.as: update expected results.
	* server/swf/tag_loaders.cpp (define_bits_jpeg3_loader): don't read
	  rgb data past alpha_position.

2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (read_jpeg_tables): survive malformed swf
	  with empty JPEGTABLES tag.
	* server/swf/tag_loaders.cpp (StreamAdapter::readFunc): don't attempt
	  to fetch 0 bytes from underlying stream... Fixes bug #21779.

2007-12-12 Sandro Santilli <strk@keybit.net>

	* libmedia/sound_handler.h: add a reset() method to put
	  the sound handler in starting conditions (for movie restart).
	* libmedia/gst/sound_handler_{gst,sdl}.{cpp,h}: implement reset()
	* server/movie_root.cpp (restart): reset sound handler if any.

2007-12-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/System.cpp: implement language, hasAudio; find os
	  at runtime.
	* libbase/rc.{h,cpp}: do not set _flashSystemOS by default; doing
	  so overrides runtime OS detection.
	* server/vm/VM.{h,cpp}: add methods to retrieve current OS and
	  current language for System.capabilities.
	* configure.ac: test for sys/utsname.h (for system information).

2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp: add support for limiting reads from
	  the tu_file StreamAdapter (bitmaps parsing).
	* server/asobj/Global.cpp: stub updateAfterEvent().
	* testsuite/actionscript.all/Global.as: one more test for
	  updateAfterEvent().

2007-12-12 Sandro Santilli <strk@keybit.net>

	* configure.ac: define DEFAULT_FLASH_PLATFORM_ID and
	  DEFAULT_FLASH_SYSTEM_OS based on $host (should likely
	  be based on $target or something similar, to check
	  when cross compiling)
	* libbase/rc.{cpp,h}: add getFlashVersionString() and
	  getFlashSystemManufacturer() methods. Currently there's
	  no .gnashrc label for them, which are instead only initialized
	  based on values detected at configure time.
	* server/asobj/System.{cpp,h}: delegate System.capabilities.os
	  and System.capabilities.manufacturer to RcInitFile.

2007-12-12 Sandro Santilli <strk@keybit.net>

	* testsuite/libbase/Makefile.am: actually run the IntTypesTest.

2007-12-12 Zou Lunkai <zoulunkai@gmail.com>

	* server/button_character_instance.cpp: stagePlacementCallback(), don't 
	  forget to set charcter depth and id.
	* server/swf/PlaceObject2Tag.cpp: readPlaceObject2() and readPlaceObject3(),
	  replace 8 read_bit() with one read_u8().
	* server/sprite_instance.{h,cpp}: clone_display_object(), remove dead function.
	  
2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/asobj/System.cpp: add System.capabilities properties
	  os, playerType and manufactorer. Would need a real implementation
	  as this is just a placeholder.
	* testsuite/actionscript.all/System.as: test availability of
	  known System.capabilities members.

2007-12-12 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionGetMember): print ascoding error
	  if trying to reference unexisitng object member.
	* testsuite/misc-swfc.all/Makefile.am: use double quotes to allow for
	  abs_mediadir to expand.

2007-12-12 Zou Lunkai <zoulunkai@gmail.com>

	* server/sprite_instance.cpp: don't restart an unloaded character, 
	  fix bug#21754.
	  
2007-12-11 Sandro Santilli <strk@keybit.net>

	* server/as_function.cpp: don't set function prototypes
	  to Function.prototype in SWF < 6.
	* server/asobj/: ClassHierarchy.cpp, Global.cpp: initialize
	  string class manually, seems to be some special thing.
	* testsuite/actionscript.all/: Function.as, String.as: successes
	  in prototype checking for swf5.

2007-12-11 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: sync with master git.
	* server/swf_event.h: leave ownership of action_buffer to the 
	  caller as a single action buffer can be triggered by multiple
	  system events.
	* server/swf/PlaceObject2Tag.{cpp,h}: keep ownership of event
	  action buffers, split PlaceObject2 and PlaceObject3 parser.

2007-12-11 Sandro Santilli <strk@keybit.net>

	* server/swf/DisplayListTag.h: streamline included headers and
	  forward declarations.
	* server/impl.cpp (create_jpeg_movie): fix log message format.

2007-12-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/Random.as: tests for distribution
	  of all (pseudo-)random output; and for correctness of random(n)
	  behaviour.

2007-12-11 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.cpp: fix slice, register native functions,
	  fix static vs. prototoype methods.
	* testsuite/actionscript.all/String.as: add more tests
	* testsuite/swfdec/PASSING: String.slice tests pass.

2007-12-11 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (sound_stream_head_loader): tolerate
	  lack of a 'latency' field in MP3 stream. Fixes bug #21729.
	  Note that Ming also reports the file to have the same problem
	  so it may actually be malformed.
	* server/parser/shape_character_def.cpp (read): still read an
	  additional byte even if fill and line bits are zero if we're
	  reading a morph shape.

2007-12-10  Rob Savoye  <rob@ute.welcomehome.org>

	* cygnal/testsuite/cygnal.all/test_http.cpp: Add extracing fields
	from an HTTP header tests to go with the ones that create the same
	fields.
	* cygnal/cygnal.cpp: Use a cygnal-dbg.log file instead of
	gnash-dbg.log. Use boost bind variables for all threads.
	* cygnal/http.{cpp,h}: Add methods for encoding HTTP header
	fields. Use a real date, instead of the bogus one. Check the file
	types to set the Content-Type HTTP field correctly.
	* cygnal/stream.cpp: Comment out lotsa debug messages.
	* cygnal/Makefile.am: Drop DIST_SUBDIRS, they don't compile
	for anything but win32 anyway. Add testsuite directory.
	* cygnal/testsuite: New testsuite directory. It's here rather than
	in gnash/testsuite since these tests are very different from
	ones gnash needs for most things.
	* cygnal/testsuite/Makefile.am: New Makefile for Cygnal test
	directories.
	* cygnal/testsuite/cygnal.all: Cygnal specific test cases live
	here.
	* cygnal/testsuite/cygnal.all/Makefile.am: Build the test cases
	and run DejaGnu on them.
	* cygnal/testsuite/cygnal.all/test_http.cpp: Test case for HTTP
	protocol.
	* configure.ac: Add new cygnal/testsuite Makefiles.
	* cygnal/testsuite/simpe.exp: clone the one used currently for
	Gnash testing.

2007-12-10 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Makefile.am: fix abs_mediadir to
	  contain quotes. Prior version failed building XML-*.swf files,
	  dunno if this patch breaks POSIX compatibility.
	* utilities/processor.cpp: check for quit request right
	  after calling movie_root::setRootMovie, as that would
	  execute actions in first frame.
	* server/timers.{cpp,h}, server/asobj/Global.cpp: implement
	  setTimeout/clearTimeout.
	* testsuite/actionscript.all/Global.as: test existance of
	  setTiemout/clearTimeout.
	* testsuite/swfdec/PASSING: setTimeout-related successes.

2007-12-10 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Makefile.am: fix abs_mediadir to contain
	  quotes. Prior version failed building XML-*.swf files, dunno if this
	  patch breaks POSIX compatibility.
	* testsuite/swfdec/PASSING: synced with master git.
	* testsuite/libamf.all/Makefile.am: don't abort if a test fails.
	  (note that test_object smashes the stack since the change in
	  hexify())

2007-12-10 Sandro Santilli <strk@keybit.net>

	* server/button_character_instance.{cpp,h},
	  server/character.h, server/impl.cpp,
	  server/movie_instance.{cpp,h},
	  server/movie_root.{cpp,h},
	  server/sprite_instance.{cpp,h},
	  server/video_stream_instance.{cpp,h}:
	  Drop the delta time argument to character::advance,
	  make sprite_instance::advance_sprite non-virtual,
	  drop unused cache-related code in impl.cpp

2007-12-10  Rob Savoye  <rob@ute.welcomehome.org>

	* libbase/image.h: Include boost/cstdint.hpp to get uint8_t in a
	portable fashion.
	* gui/Makefile.am: Add am-frag to EXTRA_DIST.	
	* libbase/log.cpp: Make hexify() handle CR/LF better. Cleanup the
	output to handle pure binary files.
	* asobj/Sound.cpp: Include sound_handler.h.
	* testsuite/Makefile.am: Cleanup non POSIX variable name
	warnings.
	* testsuite/actionscript.all/Makefile.am: Cleanup non POSIX
	variable name warnings. 
	* testsuite/misc-swfc.all/Makefile.am: Cleanup non POSIX variable
	name warnings.

2007-12-10 Sandro Santilli <strk@keybit.net>

	* server/timers.h: _start must be a long.

2007-12-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/vm/VM.{h,cpp}: add randomNumberGenerator() to return
	  pointer to a boost pseudo-RNG.
	* server/vm/ASHandlers.cpp: use boost RNG instead of tu_random
	  in ActionRandom().
	* server/asobj/Math.cpp: use boost RNG instead of tu_random in
	  math_random().
	* server/movie_root.cpp: remove calls to tu_random::next_random.
	* server/action.cpp: remove tu_random include.
	* libbase/tu_random{cpp,h}: removed.
	* libbase/Makefile: remove deleted files

2007-12-10 Sandro Santilli <strk@keybit.net>

	* server/parser/movie_def_impl.cpp (readHeader): 0 FPS 
	  must be interpreted as max FPS (65535).
	* server/timers.{cpp,h}: evaluate object property name
	  at execution, not initialization.
	* testsuite/swfdec/PASSING: setinterval2.swf passes.

2007-12-10 Sandro Santilli <strk@keybit.net>

	* server/timers.cpp (expired): add interval to start time
	  when expired (rather then using current time); expire
	  also when start+interval == now.
	* testsuite/swfdec/PASSING: setinterval.swf succeeds.

2007-12-09 Sandro Santilli <strk@keybit.net>

	* server/timers.{cpp,h}: let 0 be a valid start timer
	  for intervals.

2007-12-08 Sandro Santilli <strk@keybit.net>

	* ManualClock.h: moved from testsuite to server
	* utilities/processor.cpp: use a manual clock for running
	  tests.
	* testsuite/swfdec/PASSING: setinterval-arguments succeeded.

2007-12-07 Sandro Santilli <strk@keybit.net>

	* gui/NullGui.cpp (run): stop keeping CPU busy for nothing.
	* utilities/: parser.cpp, Makefile.am: drop gparser.

2007-12-07 Sandro Santilli <strk@keybit.net>

	* server/vm/VM.{cpp,h}: take a VirtualClock at init time
	  and use it from getTimer().
	* gui/Player.cpp: initialize the VM with SystemClock.
	* testsuite/: Makefile.am, ManualClock.h: manual clock
	  for test runners.
	* testsuite/MovieTester.{cpp,h}: initialize the VM
	  with a SystemClock.
	* testsuite/server/: DisplayListTest.cpp,
	  PropertyListTest.cpp: initialize the VM
	  with a ManualClock.
	* utilities/processor.cpp: initialize the VM with
	  SystemClock.

2007-12-07 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* testsuite/misc-swfc.all/gotoFrameFromInterval2.sc:
	  new testcase for gotoAndPlay -> stop
	* testsuite/misc-swfc.all/gotoFrameFromInterval.sc:
	  fix sanity check
	* testsuite/misc-swfc.all/gotoFrameLabelAsFunction.sc:
	  new test for gotoAndPlay(label) *function*
	* server/sprite_instance.cpp: fix gotoAndXXX for frame labels
	  
2007-12-07 Sandro Santilli <strk@keybit.net>

	* server/: Makefile.am, SystemClock.{cpp,h}, VirtualClock.cpp:
	  New VirtualClock virtual class and system time based implementation.

2007-12-07 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/intervalTest.as: more self-contained
	  tests, to reduce relying on MovieTester concept of time;

2007-12-07 Zou Lunkai <zoulunkai@gmail.com>

	* server/character.h, sprite_instance.cpp, dlist.{h,cpp}:
	  deprecate the TimelineInfor class, it's no longer needed in the
	  new timeline control design.
	  
2007-12-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/Dejagnu.sc: print __END_OF_TEST__ 
	  and fscommand:quit in done(), call this.done() from totals()
	  and xtotals().
	* testsuite/misc-swfc.all/Makefile.am: add consistency checks
	  for tests.
	* testsuite/misc-swfc.all/: sound.sc, gotoFrameFromInterval.sc:
	  Don't include check.sc, let Dejagnu.sc do that to avoid symbols
	  redefinition.

2007-12-06 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fb.{h,cpp}: switch to graphics mode (and back) to get rid
	  of any text console output and the cursor

2007-12-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/swf/tag_loaders.cpp: revert last change; it stops
	  the parsing errors but causes segfaults.

2007-12-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/swf/tag_loaders.cpp: Omit read of evidently optional latency
	  bytes in MP3 audio. (Unused anyway).
	* libmedia/sdl/VideoDecoderFfmpeg.cpp: set FLV source line width
	  to next multiple of four. Fixes slanted video rendering in bug #21712
	  and doesn't appear to break other cases. Minor cleanups.

2007-12-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/Makefile.am: fix deps for
	  alltest-runner, only allow tests to advance at most 50 times.
	* testsuite/misc-swfc.all/Dejagnu.sc: print file/line info
	  for successes too.
	* testsuite/server/StreamTest.cpp: add seek tests.

2007-12-06 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (read): don't
	  consume an additional byte if both fill and line bits
	  are zero. Fixes an out-of-bound access during Glyph
	  parsing of bgtest.swf (1a2bd0411b38db40e74916a3b413522c)

2007-12-05 Sandro Santilli <strk@keybit.net>

	* testsuite/server/StreamTest.cpp: don't assume
	  we have a non-caching stream, accidentally test
	  set_position too..

2007-12-05 Sandro Santilli <strk@keybit.net>

	* server/stream.h: document align reads and bitwise
	  reads, add a couple of WARNING for possible bugs.

2007-12-05 Sandro Santilli <strk@keybit.net>

	* server/stream.h: document align() and get_position().
	* testsuite/server/StreamTest.cpp: add tests for
	  stream::get_position()
	* server/parser/shape_character_def.cpp (read):
	  fix format strings for SHAPE_LOG builds.

2007-12-05 Sandro Santilli <strk@keybit.net>

	* configure.ac, server/dlist.{cpp,h}: get assertion checking
	  back to enabled by default, disable instead the invariant testing
	  function for DisplayList, unless explicitly requested with a compile
	  time GNASH_PARANOIA_LEVEL.

2007-12-04 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: registerClassTest2 requires
	  init actions support in Ming.
	* server/fill_style.{cpp,h}: make fill_style a concrete class,
	  only had the destructor as a virtual anyway...

2007-12-04 Sandro Santilli <strk@keybit.net>

	* libmedia/AudioDecoderSimple.cpp (decode): don't leak BitsReader
	  objects, minor cleanups (still sucks pretty much).
	* server/parser/video_stream_def.cpp (readDefineVideoFrame): read all
	  data at once rather then reading a byte each iteration of a loop,
	  read frame number from tag, improve robustness and other minor cleanups.
	* server/stream.cpp: reduce direct accesses to the underlying stream
	  in preparation for using a cache buffer.
	* libmedia/Makefile.am: don't put <tab> characters before variable
	  assignment.

2007-12-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/Makefile.am: Add missing gstreamer files.

2007-12-04 Sandro Santilli <strk@keybit.net>

	* (tons of files): drop tu_types.h, use boost/cstdint.hpp instead.

2007-12-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/MediaDecoder.cpp: make sure we can stop decoding before the
	  buffer is full. Avoids waiting interminably for the thread to finish
	  if gnash is closed in the decoding loop.

2007-12-04 Sandro Santilli <strk@keybit.net>

	* testsuite/libbase/: Makefile.am, IntTypesTest.cpp: 
	  Add test for size of *int*_t structs.

2007-12-04 Zou Lunkai <zoulunkai@gmail.com>

	* server/sprite_instance.cpp, server/vm/ASHandlers.cpp: 
	  sprite_startDrag(), ActionStartDragMovie(), mark the character as script
	  transformed after start mouse dragging.
	* testsuite/misc-swfc.all/mouse_drag_test.sc: xchecks to checks, bug #20723
	  also fixed.
	
2007-12-04 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/Makefile.am, mouse_drag_test.sc: new test file
	  for mouse dragging, fix this should help fixing zoonmheng.swf.
	* testsuite/misc-ming.all/loop_test10.c: more tests for name synthesis,
	  all passed.
	* server/dlist.cpp: mergeDisplayList(), minor cleanups.

2007-12-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/MediaParser.h, libmedia/sdl/MediaParserFfmpeg.h: pass pointer
	  to audio codec context (ffmpeg only).
	* libmedia/sdl/MediaParserFfmpeg.{h,cpp}: remove useless _frame.
	* libmedia/sdl/AudioDecoderFfmpeg.cpp: use parser's original audio codec
	  context (fixes playback of some audio codecs); don't fail on missing
	  parser until it's needed.

2007-12-03 Sandro Santilli <strk@keybit.net>

	* libbase/curl_adapter.cpp (fill_cache): one liner early-out to
	  improve loading speed x3.
	* server/array.cpp: register native functions, fix interface
	  initialization and logging.
	* server/asobj/Global.cpp: ASNative => ASnative
	* testsuite/actionscript.all/array.as: test for calling Array()
	  as a normal function, ctor use trough ASnative, flag position.

2007-12-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/sdl/MediaDecoderSdl.cpp: make gotAudio() and gotVideo()
	  return false when decoder setup failed. With any luck, we'll
	  just play the decodable stream.

2007-12-03 Sandro Santilli <strk@keybit.net>

	* server/DynamicShape.cpp (clear): set current path to NULL
	  or would point to deleted memory. Fixes bug #21583.
	* server/sprite_instance.cpp (markReachableResources): assert
	  that the tmp backup list is empty.

2007-12-03 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (sound_stream_head_loader): ensure 
	  needed bytes are available, fix long read for mp3 case.
	* server/stream.cpp (open_tag): don't trust a tag advertising
	  to go past end of it's containing tag.

2007-12-03 Sandro Santilli <strk@keybit.net>

	* libbase/zlib_adapter.cpp: print error messages from zlib, few more
	  checks for robustness.
	* server/swf/tag_loaders.cpp (sound_stream_block_loader): ensure
	  needed bytes are available, don't attempt to read 0 bytes
	  from stream (malformed swf).
	* server/stream.{cpp,h}: drop unused get_tag_length, forbid
	  seek-backs to before any opened tag start.
	* server/parser/movie_def_impl.{cpp,h}: mutex-protect
	  characters dictionary. 
	* libbase/BitsReader.h, libmedia/AudioDecoderSimple.cpp: renamed
	  BitsReader::got_bits to gotBits (style).
	* testsuite/swfdec/PASSING: countdown.swf succeeds after zou commit
	  (unload event related).

2007-12-03 Zou Lunkai <zoulunkai@gmail.com>

	* server/dlist.{h, cpp}: add mergeDisplayList() for timeline control attempt5.
	* server/sprite_instance.{h,cpp): restoreDisplayList(), use the new 
	  mergeDisplayList() interface; cleanups for executing a PlaceObject2 tag.
	* testsuite/misc-ming.all/loop_test10.c: xchecks to checks.
	* testsuite/misc-ming.all/loop_test-Runner.cpp: allow a invalidated bound
	  detection regression, one check to xcheck. This regression is caused by
	  always invalidating a looping back character, could be fixed in later 
	  optimization step.	

2007-12-02 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler{.h,_ogl.cpp,_agg.cpp,_cairo.cpp},
	server/render.{h,cpp}: Drop allow_glyph_textures and draw_bitmap
	because the glyph texturing code was removed from the Gnash core
	recently. (This was the only purpose for draw_bitmap.)

2007-12-02  Rob Savoye  <rob@ute.welcomehome.org>

	* Makefile.am: Add target to build ipk packages.
	* packaging/ipkg: new directory for ipk packaging files.
	* packaging/ipkg/{Gnash.desktop, control, postinst, prerm,
	GnashG.xpm}: New files to build ipks. 

2007-12-02 Sandro Santilli <strk@keybit.net>

	* libbase/noseek_fd_adapter.cpp: stop calling fstat and needlessly
	  allocate/deallocate buffers. Read in chunks of 512 bytes.
	  This makes reading from stdin more then 15 times faster.

2007-12-02 Sandro Santilli <strk@keybit.net>

	* libbase/: Makefile.am, tu_file.h, utility.h,
	  libmedia/AudioDecoderSimple.cpp, server/asobj/:
	  Global.cpp, string.cpp, server/vm/action.cpp:
	  Drop tu_swap.h

2007-12-01 Sandro Santilli <strk@keybit.net>

	* server/vm/fn_call.h: add isInstantiation() method to distinguish
	  between normal call and instantiating call to builtin constructors.
	* server/asobj/Boolean.cpp (boolean_ctor): return a boolean (or
	  undefined) type if not instantiating.
	* server/asobj/Number.cpp (number_ctor): return a number type if not
	  instantiating.
	* server/asobj/string.cpp (string_ctor): return a string type if not
	  instantiating.
	* testsuite/actionscript.all/: Boolean.as, Number.as, String.as,
	  ops.as: successes.
	* testsuite/swfdec/PASSING: string-construct tests pass.

2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/vm/Machine.cpp: Remove an "empty" if-statement that, if it
	weren't empty, would probably be a premature optimization. Pointed out
	by Hubert Figuiere.

2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler{.h,_ogl.cpp,_agg.cpp,_cairo.cpp},
	server/render.{h,cpp}: Drop create_bitmap_info_alpha, since it is
	unused and none of the current renderers implement it.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Boolean.as: add test for Boolean()
	  constructor call out of an 'new' statement. Gnash fails.
	* testsuite/actionscript.all/String.as: add test for String()
	  constructor call out of an 'new' statement. Gnash fails.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* libbase/: drop demo.{cpp,h} and hash_wrapper.h
	* utilities/parser.cpp: use std::map instead of hash_wrapper.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* libgeometry: drop libgnashgeo.

2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_tri.{cpp,h}: Remove these unused
	files.
	* backend/render_handler_agg.cpp: Minor cleanups: Avoid calling
	default constructors (they are called anyway). Switch m_pixf to
	std::auto_ptr. Remove the unused stubs apply_color and apply_matrix.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: sync to master.
	* libgeometry/: Makefile.am, kd_tree_dynamic.{cpp,h},
	  kd_tree_packed.{cpp,h}: drop unused files guilty of
	  using hash_wrapper.h

2007-12-01 Sandro Santilli <strk@keybit.net>

	* libmedia/sdl/sound_handler_sdl.{cpp,h}: drop dependency on
	  hash_wrapper.h.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* libmedia/gst/sound_handler_gst.{cpp,h}: drop dependency on
	  hash_wrapper.h
	* utilities/processor.cpp: add support for reading from stdin.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* libbase/: Makefile.am, triangulate.h, triangulate_float.cpp,
	  triangulate_impl.h, triangulate_sint32.cpp: drop dead code.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* server/: Makefile.am, fontlib.cpp, shape.{cpp,h},
	  tesselate.{cpp,h}, parser/morph2_character_def.{cpp,h},
	  parser/shape_character_def.{cpp,h}:
	  Drop unused software renderer (tesselator, mesh_set and friends)

2007-12-01 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/sdl/MediaParserFfmpeg.cpp: Add buffer to prevent invalid
	  reads when decoding media frames.

2007-12-01 Sandro Santilli <strk@keybit.net>

	* server/: font.{cpp,h}, fontlib.{cpp,h}, text.cpp:
	  Drop deprecated textured glyphs support.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* another bunch of files: drop deprecated cache data management
	  and generate_font_bitmaps interface.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* server/batch_test.py => testsuite/samples/batch_test.py:
	  moved what looks like a tester for movies in testsuite/samples
	  in a more likely place.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* lots of files: drop most includes of container.h, the only
	  ones left are in files which can probably die on their own.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* configure.ac: go find PNG libs (still not used, but planned)

2007-11-30 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler.h, server/render.cpp: Drop set_cxform
	because it's unused; drop set_matrix because its semantics are
	unclear. Instead of set_matrix, add matrix arguments to
	draw_line_strip and draw_poly.
	* backend/render_handler_agg.cpp: Drop set_cxform and set_matrix and
	adjust draw_{line_strip,poly} to match. Drop m_current_cxform and
	m_current_matrix wihch were previously used to hold the arguments to
	set_{matrix,cxform}.
	* backend/render_handler_cairo.cpp: Make cairo_init_matrix static.
	Introduce class CairoScopeMatrix which will apply a matrix to the
	current cairo matrix and revert that application when it goes out of
	scope. Remove apply_matrix in favour of CairoScopeMatrix.
	* backend/render_handler_ogl.cpp, gui/gui.cpp,
	server/edit_text_character.{cpp,h}, server/render.{cpp,h},
	server/text.cpp : Adjust following the removal of set_{matrix,cxform}
	and changes to draw_{line_strip,poly}.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (format_text): reset bounds when in
	  autoSize mode.
	* testsuite/misc-mtasc.all/TextFieldTest.as: success and a new test.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_number): add support for parsing hex
	  strings in swf6+
	* testsuite/actionscript.all/Number.as: success in hex parsing tests.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Number.as: add test for '0xRRGGBB'
	  automatic conversion to number in SWF6+ (gnash fails).
	* testsuite/misc-mtasc.all/: Makefile.am, TextFieldTest.as:
	  New test for TextField, contributed by Asger Ottar Alstrup
	  <asger@area9.dk>.
	* testsuite/misc-mtasc.all/check.as: print expression in failing
	  check()/xcheck() calls.

2007-11-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/sdl/AudioDecoderFfmpeg.cpp: Don't try to delete non-
	  existent codec context.
	* libmedia/sdl/MediaParserFfmpeg.cpp: Avoid moving stream position
	  before reading probe data.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* gui/kde.cpp (quit): use QApplication::exit.
	* gui/kde_glue_agg.cpp: keep rendering no matter what HAVE_QTOPIA says
	  (or rendering would be disabled for normal kde-gnash)

2007-11-30 Sandro Santilli <strk@keybit.net>

	* plugin/plugin.cpp: don't use operator+ on temp string, it seems
	  to have weird problems in some cases. See bug #21667.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: support swapping and removing levels,
	  add a pointer to originally loaded movie for methods still needing 
	  that.
	* gui/gui.cpp: use movie_root::getRootMovie() instead of getLevel(0)
	  as we can't assume _level0 is present (I think).
	* server/character.cpp (computeTargetPath): for _level# movies !=
	  original root movie return '_level#' string, not '/'.
	* server/sprite_instance.cpp: allow removing and swapping levels.
	* testsuite/misc-mtasc.all/: level5.as, level99.as: test swapping
	  and removing levels.
	* testsuite/swfdec/PASSING: movieclip-swap-depths tests succeed.

2007-11-30 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (computeBounds): don't choke
	  on glyph shapes with m_line set to 1. Fixes bug #21674.

2007-11-30 Zou Lunkai <zoulunkai@gmail.com>

	* server/vm/ExecutableCode.h: don't push or execute any event code
	  for destroyed characters(don't need to do this check if opcode guard 
	  is clear and sane).
	* testsuite/misc-ming.all/loop_test6.c: two more xpasses.
	* testsuite/misc-ming.all/displaylist_depths_test2.c, loop_test8.c,
	  place_and_remove_object_insane_test.c: comments or small fixs.
	
2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Draw rounded outlines. Fixes bug
	#20085.

2007-11-29 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/Makefile.am: Added new files.
	* libmedia/FLVParser.{h,cpp}: Use a shared pointer for the tu_file stream.
	* libmedia/MediaBuffer.h: Changed from using a combined audio-video
	  container, to seperate containers.
	* libmedia/MediaDecoder.{cpp,h}: Split into a header and source file. Move
	  shared code to MediaDecoder.cpp.
	* libmedia/MediaParser.h: Use a shared pointer for the tu_file stream.
	* libmedia/sound_handler.h: Removed duplicate code.
	* libmedia/gst/VideoDecoderGst.{cpp,h}: Updated to changed API.
	* libmedia/gst/sound_handler_gst.{h,cpp}: Initial code for callbacks.
	* libmedia/sdl/AudioDecoderFfmpeg.cpp: Free at the right point(?)
	* libmedia/sdl/MediaDecoderSdl.{cpp,h}: Moved shared code to MediaDecoder.cpp.
	* libmedia/sdl/MediaParserFfmpeg.{h,cpp}: Use a shared pointer for the tu_file stream.
	* libmedia/sdl/sound_handler_sdl.h: Updated some comments.
	* libmedia/gst/AudioDecoderGst.{cpp,h}: Added. Implements the audiodecoder
	  used by GST when playing FLVs.
	* libmedia/gst/MediaDecoderGst.{cpp,h}: Added. Implements the MediaDecoder
	  used when playing movies and sounds. Doesn't work. Should not be far from
	  playing FLVs.

2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Remove line styles from masks.
	Fixed bug #21678.

2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Implement real anti-aliasing using
	the accumulation buffer. Make sure that video doesn't get
	anti-aliased. Use a raw pointer instead of boost::ref as an argument
	to boost::bind. This is safe given that render_handler_ogl is
	noncopyable. (Suggested by Sandro.)
	* gui/gtk_glue_gtkglext.cpp: Enable the accumulation buffer.

2007-11-29  Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libmedia/Makefile.am,MediaBuffer.h: build and link FFMPEG part of
	  libmedia.

2007-11-29  Rob Savoye  <rob@ute.welcomehome.org>

	* gui/am-frag/qtopia.am: Use HAVE_QT_2 instead of HAVE_QTOPIA_2.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Video-EmbedSquareTestRunner.cpp: don't test video
	  if built w/out support for it.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: add test for
	  MovieClip._level (gnash fails)
	* testsuite/misc-mtasc.all/Dejagnu.as: print info message on successes too.
	* testsuite/misc-mtasc.all/: level5.as, level99.as: test swapDepth and
	  removeMovieClip effects on levels (gnash fails). 

2007-11-29 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp: add staticDepthOffset to _level# movies.
	* server/character.{cpp,h}: get target right for _level# now
	  that we encode staticDepthOffset-modified depth.
	* testsuite/actionscript.all/MovieClip.as: success getting _root's
	  depth.
	* testsuite/misc-mtasc.all/: levels.as, level5.as, level99.as:
	  success getting levels depth.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* testsuite/generic-testrunner.sh:
	  print run test on consistency error.
	* testsuite/misc-mtasc.all/Dejagnu.as: have Dejagnu.done() trace
	  __END_OF_TEST__ for consitency checking.
	* testsuite/misc-mtasc.all/Makefile.am: enable consistency checking,
	  fix dependencies, account for incosistent tests.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/: enum.as, exception.as, function_test.as,
	  hello.as, implementsOpTest.as, inheritance.as, super_test1.as:
	  Add total run test checking.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/: Dejagnu.as, check.as: add support for
	  check_totals, xcheck_totals.
	* testsuite/misc-mtasc.all/: level5.as, level99.as, levels.as:
	  add test for _level# depths (fail) and total run test count.

2007-11-29 Sandro Santilli <strk@keybit.net>

	* configure.in: always look for X11 libs, even if build_fb is set (may be just
	  one of the guis, not the only one)
	* gui/am-frag/qtopia.am: don't append to CXXFLAGS before it's
	  set.

2007-11-28  Rob Savoye  <rob@ute.welcomehome.org>

	* configure.ac: Remove duplicate AC_DEFINE of HAVE_QTOPIA.
	* macros/agg.m4: Put double quotes around sub-shell invocation to
	avoid problems with the buggy bash.
	* macros/qt.m4: Cleanup how the version number gets set from
	QTDIR.
	* macros/qtopia.m4: Add more modules to qt_headers.
	* gui/kde.cpp: Add support for Qt2.
	* gui/kdesup.h.cpp: Add support for Qt2.
	* gui/kde_glue.h: Add initial support for Qt4.
	* gui/kde_glue_agg.{cpp,h}:  Add initial support for Qt4.
	* gui/am-frag/qtopia.am: Add support for Qt2, and Qtopia.
	* gui/am-frag/kde.am: Add support for the QT4 Qt3Support module.
	
2007-11-29 Sandro Santilli <strk@keybit.net>

	* libbase/jpeg.{cpp,h}: use setjmp/longjmp from custom error handler
	  so to not return control to libjpeg which doesn't expect that
	  and properly throw an exception on first error.
	  Fixes bug #21609.

2007-11-28  Rob Savoye  <rob@ute.welcomehome.org>

	* gui/am-frag: Automake include files to make the top level
	gui/makefile.am less huge. It also makes it much cleaner for when
	you have to add a new GUI target.
	* gui/Makefile.am: Include Automake stubs if specified by the
	build.
	
	* macros/qt.m4: New file. originally pulled from kde.m4, but then
	modified heavily to use QTDIR correctly, and to handle multiple
	differing versions of QT APIs. For now the default is to use Qt3
	instead of Qt4.
	* macros/kde.m4: QT stuff moved to it's own file.
	* macros/qtopia.m4: Change how the version and topdir get set
	based on now correctly handling QPEDIR.
	* configure.ac: Add Automake conditional for cross compiling. Add
	more Automake conditionals for the different QT versions.

2007-11-28 Markus Gothe <nietzsche@lysator.liu.se>

	* backend/render_handler_ogl.cpp: boost::ref(this) -> *this.
	* macros/freetype.m4: --libs-only-l is bogus if you have it
	  installed by default and pkg-config is unaware of it.
	* macros/qtopia.m4: Clean up.
	* macros/agg.m4: --libs-only-L cannot have worked ever.
	* configure.ac, macros/curl.m4, macros/qt.m4, macros/qtopia.m4: 
	  Fixed 'test -eq'.

2007-11-28 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (inflate_wrapper): pretty-print about
	  premature end of tag while inflating, add last error message when
	  an error occurs during inflating.

2007-11-28 Sandro Santilli <strk@keybit.net>

	* gui/cpp.cpp: fix build with ENABLE_REGION_UPDATES_DEBUGGING
	  defined.
	* server/swf/tag_loaders.cpp (inflate_wrapper): don't read past
	  end of tag, reads in chunks rather then byte-by-byte.
	  Fixes bug #21377.
	* server/impl.cpp: stub support for png loading.

2007-11-28 Sandro Santilli <strk@keybit.net>

	* server/asobj/Stage.{cpp,h}: make Stage an AsBroadcaster and
	  register its native methods; stage align and showMenu members.
	* server/movie_root.cpp: update use of Stage to its AsBroadcaster
	  interface.
	* server/asobj/Key.cpp: minor cleanups.
	* server/asobj/MovieClipLoader.cpp: cleanups and native methods
	  registration.
	* testsuite/actionscript.all/Stage.as: few more successes.

2007-11-28 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Function.as: 'new' is a reserved word, 
	  protect it as a string when used as property name (or Ming
	  0.4.0.beta6 won't compile it)
	* server/asobj/Key.cpp: register native Key methods.
	* configure.ac: look for QT libs if kde gui is requested;
	  don't bail out if QTOPIA is not found, unless qtopia gui is
	  requested.

2007-11-27  Rob Savoye  <rob@ute.welcomehome.org>

	* macros/qtopia.m4: New file to find Qtopia bits. Current supports
	only QT2 and Qt4.
	* Makefile.am: Add Qtopia debug statements.
	* configure.ac: Add Qtopia as a GUI. Look for Qtopia dev files if
	specified. Currently because of the diversity of Qtopia
	installation paths, --with-qtopia-incl and --with-qtopia-lib must
	always be used.

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (serialnumber_loader): fix parsing
	  of the SERIALNUMBER tag.

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/swf.h: define ACTION_FSCOMMAND2
	* server/vm/ASHandlers.{cpp,h}: stub support for fscommand2
	  (SWF7 opcode)

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: notify mouse events to _global.Mouse
	  listeners
	* server/asobj/Mouse.cpp: initialize _global.Mouse as an
	  AsBroadcaster.
	* server/asobj/AsBroadcaster.cpp: reduce debugging output.
	* testsuite/actionscript.all/Mouse.as: successes in AsBroadcaster
	  interfaces availability.

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionMbSubString, ActionMbLength):
	  always resize the vector passed as third argument to
	  GuessEncoding so to contain at least one element each
	  character in the string (not fully tested but fixes
	  an invalid offset access with panda.swf).

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/asobj/Object.cpp (object_registerClass): hopefully
	  got arguments index correctly this time (in error messages).

2007-11-27 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/check.as: add some dox over
	  check_equals aimed at get first and second arguments
	  in the correct way.
	* testsuite/misc-mtasc.all/: Makefile.am, implementsOp*:
	  Test for implementsOp (adapted patch #6287).

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (unload): don't destroy childs when unloading
	  parent. 
	* testsuite/actionscript.all/MovieClip.as: success in tests
	  of accessibility of unloaded sprites' childs.

2007-11-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/NetStreamFfmpeg.cpp: don't try to free codec context
	  for non-FLVs, however, because these are initialized differently.
	  
2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/character.cpp (unload): don't abort if the character
	  is attempted to be unloaded twice.
	* server/sprite_instance.cpp: don't abort if the character
	  is attempted to be unloaded twice.
	* testsuite/actionscript.all/MovieClip.as: test double unload
	  of a character (once triggered by unload of parent and one
	  direct unload).

2007-11-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: fix bogus check calls,
	  reveiling a bunch of failures in gnash...

2007-11-27 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* extensions/fileio/fileio.{cpp,h}: implement feof()

2007-11-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/NetStreamFfmpeg.{cpp,h}: mainly visual code cleanup. Also make
	  sure allocated codec context is explicitly freed when stream is closed
	  (fixes leak when playing FLVs).

2007-11-27 Sandro Santilli <strk@keybit.net>

	* server/as_value.h: rename allowUnloaded parameter of sprite accessor
	  methods to skipRebinding, for clarity.
	
2007-11-26 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStreamFfmpeg.{cpp,h}: more AVPacket wrapping work.

2007-11-26 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: add is_sprite() and a way to get the sprite
	  value w/out re-evaluating path.
	* server/sprite_instance.cpp (get_path_element): don't re-evaluate
	  target paths of unloaded sprites while getting path elements.
	  Needs more testing, but for now it fixes bug #21647.

2007-11-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/NetStreamFfmpeg.{cpp,h}: add PktPointer class
	  to make sure AVPackets are initialized and (more importantly)
	  destroyed when no longer needed.

2007-11-26 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: add failing test
	  for referenceability of childs of unloaded sprites when
	  brother has onUnload event and child doesn't.
	* testsuite/swfdec/PASSING: sync with swfdec git.

2007-11-26 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (get_variable_raw): log an aserror when
	  referencing an undefined variable.
	* server/parser/action_buffer.h: cleanup and comments fix
	* testsuite/misc-swfmill.all/dict_override.xml: comments fix.
	* server/parser/movie_def_impl.{cpp,h}: consistent locking for
	  _frames_loaded (so helgrind is happy).
	* gui/: Makefile.am, gnash.cpp: add CXXFLAGS in --version output.

2007-11-26 Zou Lunkai <zoulunkai@gmail.com>

	* server/dlist.h, dlist.cpp: testInvariant(), 
	  reinsertRemovedCharacter(), allow duplicated depths in removed zone.
	* testsuite/misc-ming.all/goto_frame_test.c: xcheck->check.
	  
2007-11-26 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/goto_frame_test.c: cleanups and tests for 
	  timeline control. new tests are disabled by default, otherwise 
	  DisplayList::testInvariant() would abort.
	  
2007-11-25  Rob Savoye  <rob@ute.welcomehome.org>

	* macros/hildon.m4: Fix the rest of the double quoting around
	shell command expansion.

2007-11-25 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStreamFfmpeg.cpp (decodeMediaFrame): always call
	  av_read_frame on the stack-allocated AVPacket before returning.
	  
	* server/parser/movie_definition.h: corrected some old names
	  from doxygen page.

2007-11-24 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_cairo.cpp: Make sure outlines are
	rounded. Fixes bug #18873.

2007-11-24 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Implement region invalidation,
	but keep it disabled since it does not appear to affect
	performance in its current incarnation.

2007-11-24 Sandro Santilli <strk@keybit.net>

	* testsuite/media/: README, default.orc, majorscale.sco:
	  Initial sample input for csound-based sound generators.

2007-11-24  Rob Savoye  <rob@ute.welcomehome.org>

	* macros/hildon.m4: Add more double quotes around shell expansion
	when setting variables. Fixes #21638

2007-11-24 Sandro Santilli <strk@keybit.net>

	* gui/Player.{cpp,h}, gui/gui.cpp, libmedia/AudioDecoder.h,
	  libmedia/AudioDecoderNellymoser.{cpp,h},
	  libmedia/AudioDecoderSimple.{cpp,h}, libmedia/FLVParser.{cpp,h},
	  libmedia/MediaBuffer.h, libmedia/MediaDecoder.h,
	  libmedia/MediaParser.h, libmedia/SoundInfo.h,
	  libmedia/VideoDecoder.h, libmedia/sound_handler.h,
	  libmedia/gst/VideoDecoderGst.{cpp,h},
	  libmedia/gst/sound_handler_gst.{cpp,h},
	  libmedia/sdl/AudioDecoderFfmpeg.{cpp,h},
	  libmedia/sdl/AudioDecoderMad.{cpp,h},
	  libmedia/sdl/MediaDecoderSdl.{cpp,h},
	  libmedia/sdl/MediaParserFfmpeg.{cpp,h},
	  libmedia/sdl/VideoDecoderFfmpeg.{cpp,h},
	  libmedia/sdl/sound_handler_sdl.cpp,
	  libmedia/sdl/sound_handler_sdl.h, plugin/win32/plugin.cpp,
	  server/button_character_instance.cpp, server/gnash.h,
	  server/impl.cpp, server/sprite_instance.cpp,
	  server/asobj/NetStreamFfmpeg.cpp, server/asobj/NetStreamGst.cpp,
	  server/asobj/Sound.cpp, server/asobj/SoundFfmpeg.cpp,
	  server/asobj/SoundGst.cpp, server/asobj/SoundMad.cpp,
	  server/parser/button_character_def.h,
	  server/parser/sound_definition.cpp,
	  server/parser/video_stream_def.{cpp,h},
	  server/swf/StartSoundTag.{cpp,h}, server/swf/tag_loaders.cpp,
	  server/vm/ASHandlers.cpp, testsuite/MovieTester.{h,cpp}:
	Put libmedia in its own namespace (gnash::media).

2007-11-24  Rob Savoye  <rob@ute.welcomehome.org>

	* macros/libtool.m4: Move the serial numbers to the top of the
	file as required by newer autotools.
	* macros/archflag.m4, boost.m4, curl.m4, dbus.m4, docbook.m4,
	freetype.m4, gnashpkgtool.m4, gtk2.m4, gtkglext.m4, jpeg.m4,
	lib-link.m4, libXML.m4, ming.m4, opengl.m4, pango.m4, sdl.m4,
	x11.m4: Put double quotes around sub-shell invocation to avoid
	problems with the buggy bash on RHEL5.
	

2007-11-24 Sandro Santilli <strk@keybit.net>

	* server/: swf.h, swf/StartSoundTag.{cpp,h}: More dox about
	  StartSound tag.

2007-11-23 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/Makefile.am: Stop building render_handler_tri.cpp
	since it is no longer used.
	* server/shape.{cpp,h}: Introduce path::transform and
	edge::transform, to be used for matrix transformations.
	* backend/render_handler_ogl.cpp: Reimplement
	apply_matrix_to_paths using path::transform.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/parser/sound_definition.h: document sound_sample a bit.
	* server/swf/StartSoundTag.{cpp,h}: some more cleanup (attempt).

2007-11-23 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Implement nested masks. Also take
	advantage of changes to type 'point' in trace_curve.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/: Makefile.am, impl.cpp, parser/sound_definition.{cpp,h}
	  swf/StartSoundTag.{cpp,h}, swf/tag_loaders.{cpp,h}:
	  Moved StartSoundTag in its own file, cleaned up.

2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/misc-ming.all/NetStream-SquareTest: fix expected results for
	  currentFps.

2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/misc-ming.all/NetStream-SquareTest: duplicate some tests from
	  NetStream.as (different results expected).

2007-11-23 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/NetStream.as: fix an expected result.

2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/NetStream.as: more tests, some changes.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStream.cpp: correctly case currentFps member.
	* testsuite/misc-ming.all/NetStream-SquareTest.c: add test for
	  currentFps only being defined on NetStream.prototype after
	  construction of a NetStream instance.
	* server/asobj/ClassHierarchy.cpp: make NetStream available
	  also in version 6.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/: Makefile.am, impl.cpp, swf/tag_loaders.{cpp,h},
	  swf/SetBackgroundColorTag.h:
	  Extrapolated a SetBackgroundColorTag class out of tag_loaders.cpp
	  into its own header file, cleaned up.

2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/NetStream.as: add missing tests for
	  various functions.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/: stream.h, types.cpp: improved dox.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/Makefile.am, server/execute_tag.h, server/impl.cpp,
	  server/sprite_instance.cpp, server/sprite_instance.h,
	  server/parser/movie_def_impl.cpp,
	  server/parser/movie_def_impl.h,
	  server/parser/movie_definition.h,
	  server/parser/sound_definition.cpp,
	  server/parser/sound_definition.h,
	  server/parser/sprite_definition.cpp,
	  server/parser/sprite_definition.h,
	  server/parser/video_stream_def.h, server/swf/ControlTag.h,
	  server/swf/DisplayListTag.h, server/swf/DoActionTag.h,
	  server/swf/DoInitActionTag.h, server/swf/PlaceObject2Tag.cpp,
	  server/swf/RemoveObjectTag.cpp, server/swf/RemoveObjectTag.h,
	  server/swf/tag_loaders.cpp:
	  Renamed execute_tag to ControlTag and moved under server/swf;
	  renamed movie_definition::add_execute_tag to addControlTag;
	  split a DoInitActionTag out of DoActionTag.

2007-11-23 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/Makefile.am: fix whitespace following trailing
	  backslash warning.
	* libbase/tree.hh: we don't want tree.hh documentation
	  to be the main page...

2007-11-23 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.h: document cleanupAfterRun.

2007-11-23 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/Makefile.am, loop_test10.c: file a new
	  test for timeline control, which completely breaks the current model. 
	  There should be a simpler model.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* server/drag_state.h: add markReachableResources method
	* server/movie_root.{cpp,h}: mark the character being dragged as
	  reachable.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (get_variable): variables paths containing
	  slashes but no colon will be attempted to be evaluated as sprites
	  before falling back to property lookup.
	* testsuite/actionscript.all/getvariable.as: successes in all newly
	  added tests.
	* testsuite/swfdec/PASSING: getvariable-slashpath and enumerate
	  tests succeed.

2007-11-22 Markus Gothe <nietzsche@lysator.liu.se>

	* macros/archflag.m4: Updated to the latest version.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionEnumerate): cleanup aserror message.
	* testsuite/actionscript.all/getvariable.as: another test

2007-11-22 Sandro Santilli <strk@keybit.net>

	* server/as_environment.{cpp,h}: drop the is_slash_based
	  parameter from parse_path, which gets simplified a bit.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/getvariable.as: additional test
	  for /slash/based path ending with a colon.

2007-11-22  Rob Savoye  <rob@ripple.welcomehome.org>

	* gui/gtksup.h: Sigh, use USE_HILDON and USE_ALP after all.
	* configure.ac: Don't build hildon as part of --enable-gui=all yet.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* configure.ac: make request for hildon and unavailability a nogo,
	  suggest installing libhildon-1-dev rather then libhildon.0-dev
	  for apt-get (the former exists for ubuntu gutsy, the latter
	  doesn't).

2007-11-22  Rob Savoye  <rob@ripple.welcomehome.org>

	* gui/gtksup.h: Use HAVE_HILDON and HAVE_ALP instead of USE_HILDON
	and USE_ALP.
	* macros/alp.m4, hildon.m4: Define HAVE_HILDON or HAVE_ALP if the
	dependant files exist.

	* Makefile.am: Add dumpconfig prints for ALP and Hildon.
	* configure.ac: Add support for the ALP and Hildon GUI frameworks,
	both of which are built on GTK+. Add initial support for the
	Launcher extension, which doesn't exist yet.
	* macros/alp.m4: Find Hildon headers and libraries.
	* macros/hildon.m4: Find Hildon headers and libraries.
	* gui/Makefile.am: Add support for the Hildon GUI framework, which
	is built on GTK+.
	* gui/gtk.cpp, gtksup.h: Add support for the Hildon GUI framework,
	which is built on GTK+. Move CreateMenu.
	* gui/gnash.in: Add ALP and Hildon.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/: getvariable.as, targetPath.as:
	  A couple of additional tests for simple variable paths with
	  slashes and no columns.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (get_member_default): don't log
	  ActionLimitException here, will be logged by outer catcher.

2007-11-22 Chad Musick <chadmusick@msbx.net>

	* testsuite/swfdec/PASSING: 23 new passing tests.
	* server/as_environment.h: Make pushCallFrame and popCallFrame
	  private, remove clearCallFrames(), provide FrameGuard nested
	  class to provide safe access.
	* server/as_object.cpp: Prevent recursion in get_super, check for
	  search depth when finding properties and throw a limit exception,
	* server/swf_function.cpp: Change to use as_environment::FrameGuard
	  and use it earlier. Only look for super in swf6+.
	* server/builtin_function.h: Increase call stack on execution.
	* server/vm/ASHandlers.cpp: Remove leftover debugging output.

2007-11-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/key_event_test.c: make the test more verbose
	* server/movie_root.cpp (cleanupUnloadedListeners): erase the
	  correct iterator (thanks zou for noticing).

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_startDrag): add support for
	  additional args.

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_frame_number):
	  Consider frame specs evaluating to 0 as frame labels.
	  Fixes bug #21567 (snoopy_click.swf).

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionStringCompare):
	  use versioned string conversion.
	* testsuite/actionscript.all/ops.as: few null/undefined 
	  string comparison tests.

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionLessThen, ActionEqual):
	  return a number rather then a bool in swf4 or lower.

2007-11-21 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/swf4opcode.sc: found a way for better
	  test result reporting (can be improved to become a full SWF4
	  compatible Dejagnu thing - lacks actual result message so far).

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: implement MovieClip.{start,stop}Drag.
	* testsuite/misc-ming.all/: DrawingApiTest.as,
	  DrawingApiTestRunner.cpp:
	  Prepare for testing MoveClip.{start,stop}Drag

2007-11-21 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: generalize key and mouse
	  listeners management.
	* server/sprite_instance.cpp (add_display_object): don't
	  attempt to remove a NULL pointer from the listeners set.

2007-11-21 Chad Musick <chadmusick@msbx.net>

	* server/as_environment.h,.cpp: Initialize _original_target, as this
	  absence was causing segfaults.  Convert the call stack to a static
	  one.
	* server/swf_function.cpp: Use a class for ensuring the call stack,
	  rather than doing so manually.
	* server/Property.h,.cpp: Initialize differently.
	* server/as_value.cpp: Be more careful about return values.
	* testsuite/actionscript.all/LoadVars.as: Clean up debugging code.
	* server/namedStrings.h,.cpp: Add 'super' to known strings.
	* server/vm/ActionExec.cpp: No need to check call stack, as it is
	  guaranteed correct through use of FrameGuard class.
	
2007-11-21 Zou Lunkai <zoulunkai@gmail.com>

	* server/as_value.cpp: to_number() convert invalid float literal
	  to zero instead of NaN for swf<5.
	* testsuite/misc-swfc.all/swf4opcode.sc: xcheck->check.
	
2007-11-21 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/swf4opcode.sc,
	  testsuite/misc-actionsript.all/ops.as: more opcode tests. 
	  
2007-11-20 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp, server/asobj/AsBroadcaster.cpp:
	  Fix build with --enable-cassert.
	* extensions/fileio/fileio.cpp:
	  Drop as_environment argument from to_string calls.

2007-11-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler.h: Document masks.
	* libgeometry/Point2d.h: Define equality operators as clas members.

2007-11-20 Bastiaan Jacques <bastiaan@bjacques.org>

	* server/vm/ASHandlers.cpp: Fix typo.

2007-11-20 Chad Musick <chadmusick@msbx.net>

	* server/array.cpp.h: Remove as_environment parameter from removeLast
	* server/asobj/AsBroadcaster.cpp Color.cpp Global.cpp LoadVars.cpp
	  MovieClipLoader.cpp Object.cpp Sound.cpp string.cpp xml.h,.cpp
	  xmlsocket.cpp: Reduce dependence on as_environment.

2007-11-20 Chad Musick <chadmusick@msbx.net>

	* server/as_object.h,.cpp: Remove as_environment parameter from
	  callMethod methods.
	* server/edit_text_character.cpp: Fix call to callMethod
	* server/asobj/AsBroadcaster.cpp Key.cpp MovieClipLoader.cpp
	  xml.cpp xmlsocket.cpp: Fix calls to callMethod
	* server/vm/fn_call.h: Add necessary support for removing env()
	  function (not yet removed).

2007-11-20 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/swf4opcode.sc, Makefile.am: add tests for swf4
	  opcodes, get some failures.
	  
2007-11-20 Zou Lunkai <zoulunkai@gmail.com>

	* server/vm/AsHandlers.cpp: using to_string_versioned() for opcode ActionStringEq,
	  fix bug21567.

2007-10-20 Chad Musick <chadmusick@msbx.net>

	* server/swf_function.h,.cpp: Remove getSuper function
	* server/as_object.cpp: Implement get_super function.

2007-11-20 Chad Musick <chadmusick@msbx.net>

	* server/array.cpp as_value.cpp as_value.h character.cpp
	  edit_text_character.cpp sprite_instance.cpp timers.cpp:
	  Remove as_environment from value conversions.
	* server/asobj/AsBroadcaster.cpp Color.cpp Global.cpp
	  MoveClipLoader.cpp NetConnection.cpp NetStream.cpp Object.cpp
	  Sound.cpp Stage.cpp string.cpp xml.cpp xmlnode.cpp xmlsocket.cpp:
	  Remove as_environment from value conversions.
	* testsuite/actionscript.all/TextField.as: Unexpected successes.
	* testsuite/misc-ming.all/intervalTestRunner.cpp: Remove as_environment
	  from value conversion.

2007-11-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/sound_definition.{h,cpp}: remove compiler
	  warnings.

2007-11-17 Markus Gothe <nietzsche@lysator.liu.se>

	* server/parser/shape_character_def.cpp: Make IRIX happy.
	* configure.ac: Fix SIZET_FMT detection for non-gcc compilers.

2007-11-17 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/Makefile.am: more splitting, each group
	  is for each letter of the alphabet (more friendly to use)
	* testsuite/swfdec/gen_run_swfdec_testsuite.sh: export
	  a GNASH_PLAYER so that swfdec_run_test may decide to
	  use gnash rather then gprocessor...

2007-11-17 Sandro Santilli <strk@keybit.net>

	* server/asobj/Color.cpp (color_gettransform): truncate
	  values to integers.
	* testsuite/swfdec/PASSING: color1.swf succeeds
	* testsuite/swfdec/Makefile.am: split swfdec test runners in
	  more groups (groups of 3 letters the name starts with)

2007-11-17 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp: parse querystring before flashvars.
	* testsuite/misc-ming.all/: FlashVarsTest.as, FlashVarsTest.html,
	  Makefile.am: add test for fully-qualified variables passed trough
	  query string and flash vars.

2007-11-17 Sandro Santilli <strk@keybit.net>

	* utilities/processor.cpp: fix -d switch.
	* testsuite/swfdec/: Makefile.am, gen_run_swfdec_testsuite.sh:
	  Split run of swfdec testsuite in 4 steps, to allow shorter
	  timeouts.

2007-11-17 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (SpriteProxy:find_sprite_by_target):
	  Make a more optimized implementation based on the assumption
	  that a sprite target is always in "dot" syntax.

2007-11-16 Sandro Santilli <strk@keybit.net>

	* server/: as_object.h, character.h: add virtual to_character()
	  casting method.
	* server/as_environment.cpp (find_target): allow characters targets.
	  Fixes snowman.swf (http://bugs.libming.org/show_bug.cgi?id=41)
	* server/vm/ASHandlers.cpp (ActionStartDragMovie): unknown target
	  would be an ASerror, not a generic one.

2007-11-16 Sandro Santilli <strk@keybit.net>

	* server/array.h (visitAll): copy the container before executing
	  arbitrary code while iterating over it. Fixes a memory corruption.
	* server/asobj/Key.{cpp,h}: Initialize the Key object as an usual
	  AsBroadcaster.
	* server/movie_root.cpp: don't cleanup Key object listeners as they
	  will follow usual AsBroadcaster cleaning convention.
	* testsuite/actionscript.all/Key.as: successes.

2007-11-16 Sandro Santilli <strk@keybit.net>

	* configure.ac: quote arguments of test(1)
	* server/asobj/MovieClipLoader.cpp (dispatchEvent): don't lookup
	  broadcastMessage, as it's a named string.

2007-11-16 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: Add a flushHigherPriorityActionQueue
	  method to be called at the end of every action block execution
	  (including end of function calls).
	* server/vm/ActionExec.cpp: flush higher priority actions at end
	  of execution.
	* testsuite/misc-swfc.all/: action_execution_order_test12.sc,
	  movieclip_destruction_test1.sc: fixed two cases.


2007-11-16 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/action_execution_order_test12.sc: add tests 
	  for action block exit and back.	
	
2007-11-16 Sandro Santilli <strk@keybit.net>

	* utilities/processor.cpp: add -d switch to force an advance delay.

2007-11-16 Zou Lunkai <zoulunkai@gmail.com>

	* server/as_object.{h,cpp}, server/asobj/Key.{h,cpp},
	  server/character.h,
	  server/button_character_instance.cpp,
	  server/edit_text_character.cpp,
	  server/movie_root.{h,cpp},
	  server/sprite_instance.cpp: drop new key listeners design and fix the
	  old design with caring about listeners invoking order.
	* testsuite/key_event_test.c, key_event_testrunner.cpp: xcheck->check.
	  
2007-11-15 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/ops.as: a couple of tests more.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: call constructAsScriptObject
	  directly rather then on_event(CONSTRUCT) when needed. Doing
	  so we can invoke the event handler *after* __proto__ is set
	  but *before* the class constructor is invoked, as reported to
	  be needed by swfdec tests.
	* testsuite/swfdec/PASSING: movieclip-set-prototype-{5,6,7,8}.swf
	  succeed.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionCastOp): swap order of arguments,
	  return null on supposedly invalid call.
	* testsuite/swfdec/PASSING: cast-{5,6,7,8}.swf succeed.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionDivide): return the string '#ERROR#'
	  when a division by 0 is requested in SWF<5.
	* testsuite/swfdec/PASSING: crash-0.5.3-divide-by-zero.swf succeeds.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_string): for MOVIECLIP types return
	  the empty string when dangling.
	* testsuite/actionscript.all/MovieClip.as: add test for convertion
	  of dangling movieclip values to a string.
	* testsuite/swfdec/PASSING: dangling-print-{6,7,8}.swf succeed now.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: construct instance on CONSTRUCT
	  event (not INITIALIZE). YouTube works, and we push all init
	  actions now.
	* testsuite/misc-ming.all/init_action_test.c,
	  testsuite/misc-swfc.all/action_execution_order_test10.sc,
	  testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
	  testsuite/misc-swfc.all/registerclass_test3.sc,
	  testsuite/swfdec/PASSING: Successes due to pushing init
	  actions on queue.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* server/parser/: movie_definition.h, movie_def_impl.{cpp,h},
	  sprite_definition.h: drop the obsoleted get_init_actions interface.

2007-11-15 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/Dejagnu.sc: make Dejagnu window automatic
	  resize to let text fit in (autoSize).
	* server/sprite_instance.cpp: cleanup debugging output.
	* testsuite/misc-swfc.all/registerclass_test3.sc: add more tests for
	  registerClass effects visibility.

2007-11-15 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/registerclass_test3.sc: add tests to for youtube
	  player2 and caught the bug.
	  
2007-11-14 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: sync'd with results from current swfdec
	  master branch.

2007-11-14 Sandro Santilli <strk@keybit.net>

	* server/as_environment.{cpp,h}: unify object finding and target
	  finding. The code is pretty dirty but is more correct then 
	  before.
	* testsuite/swfdec/PASSING: getsetproperty-target-{6,7,8}.swf succeed
	* testsuite/actionscript.all/with.as: no more failures (we need more)
	* testsuite/misc-ming.all/callFunction_test.c: two more successes, one
	  test still fails.

2007-11-14 Sandro Santilli <strk@keybit.net>

	* server/asobj/Object.cpp (object_registerClass): more informative
	  aserror messages.
	* testsuite/actionscript.all/TextField.as: more tests.
	* server/sprite_instance.cpp, server/video_stream_instance.cpp:
	  Remove some debugging output (compile-time defined)

2007-11-14 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: add a processingActions method,
	  might be used to know wheter to push actions or execute
	  them immediately.
	* server/sprite_instance.{cpp,h}: add an execute_init_action
	  method to be called by DoInitAction tag executor; add a
	  YOUTUBE_HAVE_PRECEDENCE macro undefining which we get lots
	  of new XPASS but break youtube... (pushing init actions
	  to action queue).
	* server/parser/movie_def_impl.cpp (add_init_action): store
	  init actions togheter with all other control tags.
	* server/swf/DoActionTag.h (execute): call execute_init_action
	  for init actions, execute them also by execute_state
	* testsuite/misc-swfc.all/: action_execution_order_test10.sc,
	  movieclip_destruction_test1.sc: some successes (we'd get much
	  more with YOUTUBE_HAVE_PRECEDENCE defined in sprite_instance.cpp)

2007-11-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/XML.as: adapt and reinclude
	  test removed with last change.

2007-11-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/XML.as: adapt test for CDATA node;
	  add XML comments (which should be ignored).
	* server/asobj/xml.cpp: (getXMLOptions) strip CDATA nodes
	  and just add text (fixes part of bug 21268); (extractNode)
	  drop comment nodes but continue to parse siblings (they can
	  be siblings of a text node).
	* server/asobj/xmlnode.cpp: minor cleanups, better debugging output.

2007-11-14 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/ButtonEventsTest.c: add self-contained
	  tests for target in user-defined and clip-defined event handlers,
	  plus setTarget('/') call when original target != the root
	  (would have failed before the fix of bug #21572).
	  Note that it takes some user interaction to trigger the
	  self-contained tests.

2007-11-14 Chad Musick <chadmusick@msbx.net>

	* server/PropertyList.cpp: Revert last change -- it includes new
	  code and is premature.

2007-11-14 Zou Lunkai <zoulunkai@gmail.com>

	* server/asobj/Key.cpp: mark built-in properties for Key object, fix a 
	  segfault with the old key listener design.
	  
2007-11-14 Chad Musick <chadmusick@msbx.net>

	* server/PropertyList.cpp: Be stricter about checking for things that
	  could make insertions fail.

2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/targetPath.as: reverted last change, the
	  test was completely bogus.

2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/targetPath.as: more tests for setTarget,
	  could not reproduce the bug just fixed in find_target
	  (would need actions defined in Button or statically-placed sprites).
	* server/as_environment.cpp (find_target): "/" is the root.
	  Fixes bug #21572.

2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/registerClassTest.c: add test for the 
	  return code of registerClass.

2007-11-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/XML.as: remove that bogus check (there
	  _is_ already a test.)

2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/registerClassTest.c: add expected
	  number of tests run.

2007-11-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/actionscript.all/XML.as: add first(!) test to check
	  whether XML nodeValues are set. Gnash fails (always null).
	  
2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/action_execution_order_test10.sc:
	  Add a couple of (failing) tests and two lines of documentation
	  (this test needs more documentation)

2007-11-13 Zou Lunkai <zoulunkai@gmail.com>

	* server/asobj/Key.cpp: use new interface of get_member, fix compiling
	  the old key listener design.
	
2007-11-13 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: DrawingApiTestRunner.cpp,
	  masks_test2runner.cpp: add comments about cairo successes.

2007-11-13 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/key_event_test.c, key_event_testrunner.cpp:
	  few more tests in both swf file and testrunner, invoked a bug.
	* testsuite/misc-ming.all/key_event_test2.c, key_event_test3.c, 
	  key_event_test4.c, key_event_test5.c, key_event_test2runner.cpp,
	  key_event_test3runner.cpp, key_event_test4runner.cpp, 
	  key_event_test5runner.cpp, KeyTest.as, KeyTest-Runner.cpp: dropped
	  10 file, we don't need them now, tests were merged to key_event_test.c.
	  
2007-11-13 Sandro Santilli <strk@keybit.net>

	* server/StreamProvider.cpp (getStream): check security
	  for post streams too.
	* server/sprite_instance.cpp (loadVariables): 
	  Don't abort on not-found url. Don't check security
	  here as it will be checked by LoadVariablesThread.
	  Fixes sheepy.swf.

2007-11-12 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/parser/shape_character_def.cpp: point_test_local bugfix:
	  revert last commit and align test coordinate to a grid instead;
	  commit some debug so I don't have to rewrite it again... ;)     

2007-11-12 Lucio Flavio Correa <lucio.correa@gmail.com>

	* gui/kdesup.h, gui/kde.cpp: implement setCuror (patch #6266).

2007-11-12 Sandro Santilli <strk@keybit.net>

	* server/asobj/SoundFfmpeg.{cpp,h}: Add a LOADS_IN_SEPARATE_THREAD
	  macro (defined by default) to disable threading, make the
	  setupDecoder a non-static private and getAudio also private.

2007-11-12 Sandro Santilli <strk@keybit.net>

	* server/asobj/SoundFfmpeg.cpp (getAudio): don't delete 
	  allocated memory twice. Fixes bug #21195.
	* gui/gnash.in: Add support for -G list for getting a list
	  of available guis.

2007-11-12 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/parser/shape_character_def.cpp: point_test_local bugfix:  
	  don't detect two crossings for the point at the junction of two 
	  lines/curves. 

2007-11-12 Sandro Santilli <strk@keybit.net>

	* server/shape.cpp: (pointOnCurve): quicker return for T in (0,1);
	  (withinSquareDistance): compute distance from segments, not points,
	  reducing iterations from 100 to 10 with no detectable precision
	  reduction.
	* testsuite/swfdec/swfdec_gnash_tester: it seems diff -u3 doesn't work
	  anymore (as of GNU diffutils 2.8.1)
	* server/: shape.cpp, tesselate.h: minor cleanup

2007-11-12 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/Makefile.am, key_event_test.c, key_event_testrunner.cpp:
	  merge all key related tests to key_event_test.c. deprecated key_event_test2,3,4,5
	  and KeyTest.as to speed up 'make check'.
	  
2007-11-11 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_attach_movie): mark the character
	  as dynamic before placing on stage (so stagePlacementCallback knows
	  about that); (stagePlacementCallback): don't construct as object
	  here, let that be done on INITIALIZE event; (on_event): construct
	  as ActionScript object before running INITIALIZE handlers.
	  Fixes bug #21556 (youtube regression).

2007-11-10 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (goto_frame): always set
	_callingFrameActions to false before calling restoreDisplayList.
	Fixes an assertion failure playing make_sleep.swf.

2007-11-10 Sandro Santilli <strk@keybit.net>

	* server/shape.{cpp,h}: add new poinOnCurve and squareDistancePtCurve
	  static methods for gnash::edge, have path::withinSquareDistance
	  use them for curves.
	* testsuite/misc-ming.all/DrawingApiTest.as: add self-contained
	  equivalent test for the previously failing one checking hitTest
	  on the green curve.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: success in
	  green curve hit test.
	* testsuite/server/EdgeTest.cpp: test edge poinOnCurve.

2007-11-10 Sandro Santilli <strk@keybit.net>

	* backend/render_handler_agg.cpp, backend/render_handler_cairo.cpp,
	  backend/render_handler_ogl.cpp, server/shape.cpp, server/shape.h,
	  server/parser/morph2_character_def.cpp,
	  server/parser/shape_character_def.cpp:
	  Changed path and edge classes to store a point (Point2d<float>)
	  for anchor and control points.

2007-11-10 Sandro Santilli <strk@keybit.net>

	* configure.ac: properly quote test arguments.

2007-11-10 Sandro Santilli <strk@keybit.net>

	* (lots of files): typedefed gnash::point to Point2d<float>,
	  drop some unused functions and cleaned up headers a bit.

2007-11-10 Sandro Santilli <strk@keybit.net>

	* libgeometry/: Makefile.am, Point2d.h: initial implementation of
	  a generalized point class.
	* testsuite/libgeometry/: Makefile.am, Point2dTest.cpp: initial
	  test for the generalized point class.

2007-11-09 Sandro Santilli <strk@keybit.net>

	* testsuite/samples/Makefile.am: don't giveup on failure
	* testsuite/misc-ming.all/DrawingApiTest.as: add test that would have
	  exposed the just-fixed silly bug.
	* server/shape.cpp (withinSquareDistance): fixed silly bug checking
	  for lines connecting origin with end of each edge rather then
	  all edges. Prepared (but not implemented) section for curves.

2007-11-09 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: Add level argument to queueEvent method
	* server/movie_root.{cpp,h}: Add level argument to pushAction*
	* server/sprite_instance.cpp: Push actions with a level
	* testsuite/misc-ming.all/action_execution_order_test5.c: one XPASS
	* testsuite/misc-ming.all/displaylist_depths_test2.c: minor additional
	  trace

2007-11-09 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/registerClassTest2.c: 
	  Document the test
	* server/movie_root.cpp (dtor, clear): don't try to cleanup action queue
	  twice..
	* server/DynamicShape.h, server/parser/shape_character_def.h: 
	  override point_test_local in DynamicShape to finalize
	  the drawing (bogus, contains comment for the why and how to fix)

2007-11-08 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: add test for existence of
	  updateAfterEvent (gnash fails).
	* server/as_environment.cpp (find_object_{slash,dot}syntax):
	  use get_path_element instead of get_member to get next element
	  from an old-style path.
	  Fixes http://www.orgamez.com/files/swf/alphazoo.swf.
	* server/asobj/Color.cpp (color_ctor): parse first argument to
	  Color constructor as a string (if not a MovieClip).
	  Fixes http://www.lsfrench.com/school/couleur/colorepaint.swf.

2007-11-08 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: reverted because
	  that problem is still not solved (false PASS earlier)
	* server/parser/shape_character_def.cpp: modified point_test_local() 
	  again to solve problems with some corner cases. It still fails some
	  rare situations on very complex graphics - I'm still working on that;
	  failure reports are greatly appreciated!
	* testsuite/misc-ming.all/DrawingApiTest.as: some new PASSes 

2007-11-08 Markus Gothe <nietzsche@lysator.liu.se>

	* utilities/parser.cpp: dropped 'bool nodelay' since it's not used.

2007-11-08 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/as_value.cpp (doubletoString): replace C code with a c++
	  implementation that ought to do the same thing. Uses stringstream
	  and locale to imbue the result with the standard C locale, which
	  fixes problems with locales that have a comma decimal separator.
	  The test below should now pass in all locales.
	* testsuite/actionscript.all/Number.as: add tests for number formatting
	  based on comments in server/as_value.cpp. Presently they should fail
	  for locales with a comma decimal separator.

2007-11-08 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp: fix compiler warnings
	* macros/sdl.m4: strip '-L/usr/lib' only if it's a single world
	  (ie: not a substring like in -L/usr/lib64)
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix test,
	  self-name can't be evaluated.
	* testsuite/misc-swfc.all/Makefile.am: make Dejagnu.sc and check.sc
	  dependencies of all .swf outputs.
	* testsuite/misc-swfc.all/Dejagnu.sc: typo fix: __global => _global

2007-11-08 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/Dejagnu.sc: don't create such a big text field bounding 
	  box for xtrace, it would hiden all button clicks located within the bounding box. 
	  Enlarge the bounding box when needed.	 
	* testsuite/misc-swfc.all/opcode_guard_test3.sc: new tests. found onButtonActions
	  might not respect the opcode guard model.
	  
2007-11-07 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/shape_test.c: add Udog's drawing, 
	  open (upper) and closed (lower); left fill (left)
	  and right fill (right).
	* testsuite/misc-ming.all/ming_utils.c (get_dejagnu_actions): don't
	  use printf to write the code into a buffer, just make the code a
	  const static const C-string.

2007-11-07 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTest.as: Add Udo's example drawing
	  and associated hitTest tests (xfailing)
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: Add pixel checking
	  for Udo's example drawing (xfailing due to visible stroke)

2007-11-07 Sandro Santilli <strk@keybit.net>

	* server/DynamicShape.cpp: close filled paths on pen move and
	  ::finalize for last path.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: all pixel checking
	  succeed now. The only failures left are hitTest-related. Time to
	  resume the old point_test implementation.

2007-11-07 Sandro Santilli <strk@keybit.net>

	* server/DynamicShape.{cpp,h}: Start new paths as new shapes
	  when beginFill is called.
	* server/shape.{cpp,h}: add interfaces for setting m_new_shape
	  both in constructors and standalone.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: fix the
	  two-overlapping squares case.

2007-11-07 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (display): skip display of null-sized levels.
	* testsuite/misc-ming.all/DrawingApiTest.as: have '-' and '+'
	  use a step of 25% instead of 20% (easier for pixel checking);
	  add hitTest for the opposite-el case.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: add pixel
	  checking for the nested-squares cases.

2007-11-07 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* testsuite/libgeometry/snappingrangetest.cpp: update testcase
	  to match new SnappingRanges design

2007-11-07 Sandro Santilli <strk@keybit.net>

	* server/shape.cpp: don't forget to initialize m_new_shape
	  in the overridden constructo !! This fixes uninitialized
	  memory giving unstable results with the nested-squares
	  cases in DrawingApiTest.swf
	* testsuite/libgeometry/snappingrangetest.cpp: don't
	  attempt to set snap_distance, not more existent.
	  I dunno if this makes the tests pointless (didn't
	  check), but at least allows its build. Udo ?

2007-11-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: pixel checking
	  for some invalid drawing (missing the nested squares to complete).
	* testsuite/misc-ming.all/DrawingApiTest.as: 3 more nested squares:
	  One with different edge directions for outer and inner squares
	  (which doesn't make a difference), and one with a new beginFill
	  call before drawing the second shape (which renders as two
	  overlapping squares, try using '-' and '+' to change _alpha
	  for testing).

2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libgeometry/snappingrange.h: add range count limiting functionality
	  and limit to 50 ranges by default; make copy constructor work again
	  by adding getter methods for private members 	

2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libgeometry/snappingrange.h: replace the distance method with a
	  more efficient area before/after comparison method; make 
	  snap_factor and single_mode private members and provide access
	  methods
	* libgeometry/Range2d.h: new getArea() function
	* gui/gui.cpp, server/character.cpp: apply snappingrange changes

2007-11-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTest.as: add self-contained test
	  for the nested-square case, showing that gnash fails in hit-testing
	  it the hole.

2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_agg.cpp: Reverted last commit because it
	  turned out that it really dropped performance (in some real world
	  cases it was up to six times slower)

2007-11-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTest.as: add another interesting
	  drawing in second drawing page (nested squares).
	* testsuite/misc-ming.all/Makefile.am: MEDIADIR define must use
	  absolute path (the local sandboxes check isn't ready for relative
	  paths yet).
	* server/dlist.cpp (display): don't display masked characters
	  if invisible.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: fixed drawing
	  of invisible masked characters.

2007-11-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* macros/freetype.m4: clean up space before default filename.

2007-11-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: add test for
	  setMask and invisible shapes (gnash fails).

2007-11-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* macros/freetype.m4: use fontconfig to find a default sans font for
	  use if gnash runtime fails to find a suitable system font. Revert
	  to the old hard-coded path if fc-match fails.
	* server/FreetypeGlyphsProvider.cpp: take DEFAULT_FONTFILE from
	  config.h.
	
2007-11-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTest.as: add support for 'h' key
	  hitting to change visibility of currently active drawing. Exposes
	  a bug with setMask, which triggers drawing of the maskee even when
	  invisible.
	* testsuite/misc-ming.all/DrawingApiTest.as: add a second drawing
	  with 3 "invalid" shapes. Hitting a number key switches between
	  the first (1) and second (2) drawing. 

2007-11-06 Markus Gothe <nietzsche@lysator.liu.se>
	
	* macros/libXML.m4: Cleaned up output.

2007-11-05 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/parser/shape_character_def.cpp: take outline hit test 
	  algorithm from old implementation; drop the old point_test 
	  method in favor of the new one; avoid browsing the paths
	  in point_test_local() when the point is already out of the
	  shape bounds 
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: two new PASSes

2007-11-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/FreetypeGlyphsProvider.cpp: Pass bold and italic values
	  to fontconfig for system fonts. Fixes bug #20597. 

2007-11-05 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/parser/shape_character_def.cpp: Implement a new point_test
	  algorithm (disabled by default since it's subject to discussion)	

2007-11-05 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_agg.cpp: Use agg::renderer_mclip instead
	of agg::renderer_base, since the latter supports multiple clipping
	boxes. This allows us to apply all the clipping regions at once. A
	performance gain should be expected for movies with multiple
	clipping regions.

2007-11-05 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add more test for
	  TextField.variable (variable name). Variables can be in objects
	  (not necessarely in sprites). Also, we got triggering of updates
	  wrong.
	* configure.ac: make "missing KDE" message more didactic
	  (see bug #21497)
	* server/shape.{cpp,h}: drop the point_test method, not much useful
	  on its own ...

2007-11-05 Sandro Santilli <strk@keybit.net>

	* server/shape.{cpp,h}: extract a ray_crossing out of point_test.
	* server/parser/shape_character_def.cpp (point_test): use 
	  path::ray_crossing against any filled path, to detect fills
	  composed by multiple paths. Fixes bug #21498.

2007-11-02 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Add OSRenderMesa, a class
	implementing OSMesa's offscreen rendering system. Move
	ogl_accessible() to the render_handler_ogl class because it
	now needs access to members of that class. Remove the unused
	get_whole_shapes method. Implement getPixel and friends.
	Please note that this offscreen code is only enabled when
	OSMESA_TESTING is defined, which the build system currently
	does not yet do due to issues described in 
	http://gnashdev.org/?q=node/46 .
	* server/gnash.h: Add an optional boolean argument to
	create_render_handler_ogl, which specifies whether the
	factory should immediately run OpenGL initialization code.
	This code should not be run immediately in the OSMesa case,
	since OpenGL calls should not be made until a context is
	available, which is not the case until initTestBuffer is
	called. initTestBuffer, in turn, cannot be called until
	renderer instantiation.
	* testsuite/MovieTester.cpp: Add support for OpenGL renderer
	testing.

2007-11-02 Sandro Santilli <strk@keybit.net>

	* gui/gui.cpp (getMovieInfo): add info about the current active
	  mouse entity.

2007-11-02 Sandro Santilli <strk@keybit.net>

	* server/asobj/Color.cpp: more bug fixes.
	* testsuite/actionscript.all/Color.as: more tests. Most pass
	  except a suspicious one about some kind of rounding which is
	  not clear to me.
	* testsuite/swfdec/PASSING: two more tests pass.

2007-11-02 Sandro Santilli <strk@keybit.net>

	* server/asobj/Global.cpp: don't forget to initialize the Color class.
	* server/sprite_instance.{cpp,h}: add a _userCxform and accessor 
	  methods; override get_world_cxform to take it into account.
	* server/asobj/Color.cpp: implement {get,set}Transform and
	  {get,set}RGB. Not 100% correct, but good progress on
	  halloweenpaint.swf (see bug #21498)
	* testsuite/actionscript.all/Color.as: test {get,set}Transform and
	  {get,set}RGB.
	* testsuite/swfdec/PASSING: couple of color-related tests now succeed,
	  more still fail.

2007-11-02 Sandro Santilli <strk@keybit.net>

	* server/drag_state.h: add x/y offset members.
	* server/movie_root.cpp (set_drag_state, doMouseDrag):
	  implement relative dragging. Fixes bug #21496.

2007-11-01 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp (run): make the window at least 1x1 pixels sized
	  in a collapsed SWF header situation.

2007-11-01 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: remove the do_mouse_drag
	  method. It's silly to call it for each sprite or button
	  when at the end only a single character (if any) would
	  do something useful with that.
	* server/: button_character_instance.cpp, sprite_instance.cpp:
	  remove the do_mouse_drag call from the (advance) function.
	* server/movie_root.{cpp,h}: Move the doMouseDrag method
	  here, as a private one, called from advance. Also, drag
	  anyway, even if not correctly, when the drag is not
	  lock-centered (to be fixed later).

2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler.h: Document that draw_poly draws a
	thin border specified by the outline parameter.
	* backend/render_handler_ogl.{cpp,h}: Header/impl separation
	for class bitmap_info_ogl.

2007-11-01 Sandro Santilli <strk@keybit.net>

	* libbase/GnashException.h: Add ActionTypeError exception.
	* server/as_value.{cpp,h} (to_primitive): a closer to ECMA-262
	  [[ToPrimitive]] implementation.
	* server/vm/ASHandlers.cpp: update use of as_value::to_primitive.
	* testsuite/actionscript.all/toString_valueOf.as: two successes.
	* testsuite/swfdec/PASSING: some more successes.
	* server/vm/fn_call.h (dump_args): print debug string version
	  for each argument.

2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_cairo.cpp: Implement draw_poly.
	
2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler.h: Document that renderers should
	ignore subshapes in glyphs, as demonstrated by Agg and
	evidenced in text-test.swf.
	* backend/render_handler_{cairo,ogl}.cpp: draw_glyph: call
	draw_subshape directly with all paths, since subshapes should
	be ignored.

2007-10-31 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.h: New header file; the beginnings
	of header/implementaion separation.
	* backend/render_handler_ogl.cpp: New OpenGL renderer
	implementation. In this initial version, support for subshapes
	and poor man's anti-aliasing (only filled shapes are affected)
	are added. The new renderer will facilitate the addition of
	more good stuff, like real anti-aliasing and to eliminate the
	many remaining OpenGL bugs. Simple masking now works.
	* gui/gtk_glue_cairo.cpp: Use a RGBA buffer by default.
	* gui/gtk_glue_gtkglext.cpp: Enable the stencil buffer rather
	than the depth buffer, since the former is used while the
	latter is not.

2007-10-31 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add test for
	  toString/valueOf properties (un)availability.
	* server/vm/ASHandlers.cpp (ActionNewAdd): don't assume
	  stack element references are valid after calls to to_primitive.
	  Fixes bug #21482.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* lots of files: assert(0) -> abort()

2007-10-30 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/toString_valueOf.as: add a test which
	  seems to be killing gnash (segfault).

2007-10-30 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_debug_string): assert(0) => abort()
	  [ to abort when NDEBUG is defined ]
	* server/character.h (markCharacterReachable): mark mask as
	  reachable.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* gui/Player.cpp (run): don't give up if the movie has collapsed size.
	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp: 
	  Check rendering effects of the setMask call.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp:
	  Check hitdetector bounds and reactions on mouse movement
	* gui/gui.{cpp,h}: Add support for mouse pointer movements using the
	  keyboard arrow keys. Support is currently enabled but can be
	  switched off at compile time. If compile-time enabled support can
	  still be toggled at runtime, currently defaults to enabled and 
	  menu items to toggle it are missing.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (display): don't render dynamic masks.
	* testsuite/misc-ming.all/masks_testrunner.cpp: no more failures here.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/masks_testrunner.cpp: add tests for effects
	  of swapDepth on dynamic masks (gnash fails).

2007-10-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/parser/sound_definition.{cpp,h}: move execute_state actions
	  to execute. Fixes bug #21465.

2007-10-30 Sandro Santilli <strk@keybit.net>

	* server/character.h (setMask): set character as invalidated
	  when it's mask change. Needs more care: when the mask itself
	  changes, we should find a way to invalidate the maskee as well,
	  but we currently have no refefence from the mask to the maskee.
	* server/dlist.cpp (display): add support for dynamic masks.
	  Needs more care: test what happens with nested masks, check if
	  it is possible to trigger infinite recursions.
	* server/sprite_instance.cpp (sprite_setMask); draft support for
	  setMask. Needs more care: forbid a character to mask itself,
	  see care needed in dlist to avoid infinite recursion (A masks B
	  contining B2 maksing A)
	* testsuite/misc-ming.all/DrawingApiTest.as: turn user-defined cursor
	  into a mask or disable the mask on click (toggle). Needs testing
	  in the runner.
	* testsuite/misc-ming.all/masks_test.c: add comments.
	* testsuite/misc-ming.all/masks_testrunner.cpp: add section testing
	  for setMask effects on rendering. Needs more care: add test for
	  effect of swapDepth on next advance.


2007-10-30 Chad Musick <chadmusick@msbx.net>

	* server/StreamProvider.cpp: Even if LIBCURL is not being used,
	  URLAccessManager.h must be included.
	* server/as_object.h,.cpp: Make instanceOf a recursive function
	  so that non-proper properties, like interfaces, will be correctly
	  searched. Add get_super() and get_constructor() functions, not yet
	  implemented.
	* server/namedStrings.h,.cpp: Add another anonymous string.
	* server/asobj/ClassHierarchy.cpp: Add prototypes to loaded objects if
	  they don't do so themselves.
	* server/vm/ASHandlers.cpp: ImplementsOp -- not quite working, yet.
	* server/vm/Machine.h,.cpp: More work toward AS3 ability.
	* testsuite/actionscript.all/Date.as: Fix bogus test -- the time
	  returned depends on local timezone, so you can't check to the second.
	* server/vm/SafeStack.h, server/vm/CodeStream.h -- Comment updates.

2007-10-29 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.cpp (checkPixel): multiply tolerance by
	  minimum renderer tolerance.
	* testsuite/misc-ming.all/masks_testrunner.cpp: fix color values,
	  which reveals all tests pass (need to add tests for setMask next).
	* server/character.h: add setMask, getMask, isDynamiMask,
	  rename isMask to isMaskLayer, add change isMask to check both
	  dynamic and static masks.
	* server/dlist.cpp: replace isMask with isMaskLayer

2007-10-27 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h} (findUpdatableProperty): return
	  static properties in inheritance chain if found, as correctly
	  documented in the header file (need an ABC compiler for real 
	  testing).

2007-10-27 Bastiaan Jacques <bastiaan@bjacques.org>

	* various Makefile.am: Remove libgnashbackend, since it is
	unused and OS X's `ar' chokes on the empty archive we
	currently create.
	* gui/Makefile.am: Don't put the gnash script in the Carbon
	bundle; instead, put bin_PROGRAMS in it.
	* gui/aqua.cpp: Implement the event loop necessary to draw
	the renderer.
	* gui/aqua_glue.h: Pass a window pointer to the rendering glue
	so the glue can attach the renderer to the window.
	* gui/aqua_ogl_glue.{cpp,h}: Implement the aqua GUI by setting
	up an OpenGL context.
	* gui/gui.h: Add a default implementation for setInterval since
	it is the same for most renderers.

2007-10-27 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: add new successes
	  from updated swfdec snapshot.

2007-10-27 Sandro Santilli <strk@keybit.net>

	* server/as_prop_flags.h: add clear_visible method.
	* server/Property.h: add clearVisible method
	* server/as_object.cpp: clear visibility flags after
	  overriding.
	* testsuite/simple.exp: double timeout.
	* testsuite/actionscript.all/Global.as: more successes
	  (still not completed).

2007-10-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: use 'delete a.b'
	  instead of 'delete(a.b)' -- the latter wasn't supported
	  by erlier Ming versions.

2007-10-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: more tests about invisible
	  flags over inherited getter-setters (most failures are for SWF6
	  only)

2007-10-27 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (findUpdatableProperty): don't overlook
	  invisible properties in *this* object, it'll be eventually
	  overridden.
	* testsuite/actionscript.all/Global.as: more successes.

2007-10-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: test ignore property flags
	  effect on inherited gettersetter.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp: have __proto__ respect the same
	  visibility rules of other properties, check visibility
	  rules in findUpdatableProperty.
	* testsuite/swfdec/PASSING: one more test passing (more failing
	  from the same set).

2007-10-26 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* server/parser/video_stream_def.cpp: Check if iterator is valid, before
	  using it. Fixes bug #21442.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* server/as_prop_flags.h: add version-based ignore flags.
	* server/Property.h: expose an isVisible(int ver) method.
	* server/as_object.{cpp,h} (findProperty): ignore invisible
	  properties.
	* testsuite/swfdec/PASSING: success for all versions from
	  ASSetPropFlags-ignore.as

2007-10-26 Sandro Santilli <strk@keybit.net>

	* extensions/gtk2/gtkext.cpp: use init_member to initialize interface
	  (fixes build)

2007-10-26 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/FLVParser.h, libmedia/MediaParser.h: Move the videoFrameType
	  definition from FLVParser.h to MediaParser.h.
	* libmedia/VideoDecoder.h, libmedia/gst/VideoDecoder{Gst,ffmpeg}.{h,cpp}:
	  Make decodeToImage return a auto_ptr (again).
	* server/video_stream_instance.cpp: We now receive the decoded image in a
	  auto_ptr.
	* server/parser/video_stream_def.{h,cpp}: Changed decoding of embedded video
	  to be on-demand, instead of at-parse. If asked to decode a random frame, we
	  rewind to the lastest keyframe (or the last decoded frame) and decode all
	  the frames needed to produce the requested frame.

2007-10-26 Markus Gothe <nietzsche@lysator.liu.se>

	* configure.ac: Added quotation-marks around $extensions_list.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h}: expose a get_path_element method
	  being the semantically equivalent to the replaced
	  character::find_relative_target
	* server/character.{cpp,h}, server/button_character_instance.{cpp,h},
	  server/sprite_instance.{cpp,h}:
	  Adapt find_relative_target to the new get_path_element.
	* server/as_environment.cpp (find_target): use the new
	  get_path_element for paths resolution.
	* testsuite/actionscript.all/: targetPath.as, with.as: some successes.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/with.as: test that '..' is
	  a legal path component in a setTarget call.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.cpp: fix substring(0,1).
	* testsuite/actionscript.all/String.as: test substring(0,1)
	* testsuite/actionscript.all/Date.as: add test for adding Date
	  instance to a number.

2007-10-26 Sandro Santilli <strk@keybit.net>

	* server/as_object.h: add virtual isDateObject() method.
	* server/asobj/Date.cpp: implement isDateObject, have valueOf
	  always return a number.
	* server/as_value.{cpp,h}: to_primitive for date objects returns
	  a string rather then a number.

2007-10-25 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Date.as: couple more tests.
	* testsuite/actionscript.all/targetPath.as: add a failing test
	  as borrowed from swfdec
	* testsuite/actionscript.all/MovieClip.as: test _parent is not
	  a proper property (gnash fails)
	* testsuite/actionscript.all/getvariable.as: more tests for
	  getvariable/setvariable.

2007-10-25 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/asobj/Date.cpp: date_valueof() returns human readable date
	  for SWF > 5 (fixes bug #21414)	
	* testsuite/actionscript.all/Date.as: 1 PASS
	* testsuite/actionscript.all/toString_valueOf.as: 2 PASSes
	* server/asobj/Date.cpp: getTime() still has to return a numeric value 
	* testsuite/actionscript.all/Date.as: add a check for getTime()

2007-10-25 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: new swfdec tests passing

2007-10-25 Sandro Santilli <strk@keybit.net>

	* server/asobj/Global.cpp (global_trace): pass environment to
	  as_value::to_string.
	* server/as_environment.{cpp,h}: drop find_target taking as_value.
	* server/sprite_instance.cpp, server/asobj/MovieClipLoader.cpp,
	  server/vm/ASHandlers.cpp: update calls to find_target (always
	  takes a string now).

2007-10-25 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* testsuite/actionscript.all/Date.as: Added testcase for bug #21414
	  (currently failing)	

2007-10-25 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/opcode_guard_test2.sc: add more consistency
	  checks for zou new tests.
	* server/as_environment.cpp (find_target): always use current, not
	  original target.
	* server/vm/ASHandlers.{cpp,h} (CommonSetTarget): reset target as first
	  thing, so that find_target won't use previously current target
	  to resolve relative paths.

2007-10-24 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/with.as: more setTarget tests (failing)

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (find_target): use original target
	  for relative paths.
	* testsuite/swfdec/PASSING: succeed in settarget-relative-*.swf

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (CommonSetTarget):
	  Reset to original target if argument doesn't correspond
	  to a character.
	* testsuite/swfdec/PASSING: succeed in settarget (still not all)

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.cpp (string_sub_str): fix corner cases
	  exposed by swfdec's substr tests.
	* testsuite/swfdec/PASSING: succeed in substr tests.

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/PropertyList.cpp: addProperty can always override
	  pre-existing properties, and inherits flags in that case.
	* testsuite/swfdec/PASSING: addProperty-flags succeeds.
	* testsuite/swfdec/gen_run_swfdec_testsuite.sh: include md5 
	  in PASS/FAIL lines (for easier copy&paste into PASSING)

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/asobj/Object.cpp: don't replicate all exported interfaces
	  to the Object class; move registerClass from prototype to class;
	  have hasOwnProperty return false on invalid calls.
	* testsuite/actionscript.all/Object.as: one more success, more
	  tests needed for hasOwnProperty calls.

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/vm/VM.{cpp,h}: initial support for a native functions table.
	* server/asobj/Global.cpp: ASnative global.
	* server/asobj/Object.cpp: register Objects' natives (101 series).

2007-10-24 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/: PASSING, gen_run_swfdec_testsuite.sh, README:
	  Include md5sum of known-to-pass tests so updates in swfdec
	  testsuite don't introduce unexpected failures.

2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_agg_style.h: don't force premultiply()
	  for RGBA bitmaps, fixes bug #20972 (hopefully...)  

2007-10-24 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: new succeeding tests from swfdec
	  testsuite. Note that prototype-recursion-* tests prevent
	  the full testsuite from being run as gnash goes into an infinite
	  recursion failling to detect max call stack limit (our
	  getter/setters use a brand new as_environment, and thus stack
	  everytime they are invoked).

2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* extensions/fileio/fileio.cpp: Fixed a bug in fgets() which
	  caused a segfault on empty files
	* extensions/fileio/Makefile.am: fixed GNASH_PLUGINS env.
	  variable   

2007-10-24 Sandro Santilli <strk@keybit.net>

	* cygnal/ACT/Makefile.am: distribute test_support and unit_tests
	  subdirs.
	* extensions/Makefile.am: distribute metome subdir

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_topmost_mouse_entity): don't
	  segfault if the root movie can handle mouse events :/

2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libgeometry/snappingrange.h: add routines for calculating
	  intersections between SnappingRanges
	* server/dlist.cpp: optimize add_invalidated_bounds() for
	  masks (don't invalidate outside of masks)	
	* backend/render_handler_agg.cpp: never use even-odd filling
	  rules when drawing a mask (unlike normal shapes); some cleanup
	* gui/fb.cpp: Limit pointing device events reading loop

2007-10-24 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h}: add update_member to only 
	  update pre-existing members (including getter-setter
	  in the inheritance chain).
	* server/as_environment.cpp (set_variable_raw): only
	  set members of elements in the scope stack if
	  pre-existing.
	* testsuite/actionscript.all/: Object.as, with.as:
	  success for the new failing tests.

2007-10-23 Sandro Santilli <strk@keybit.net>

	* configure.ac: abort if no supported GUI are selected.

2007-10-23 Markus Gothe <nietzsche@lysator.liu.se>

	* macros/glib.m4; Fixed out put.
	* macros/sdl.m4: Fixed bogus -I.

2007-10-23 Takashi Iwai <tiwai@suse.de>

	* plugin/plugin.cpp: include <cstring>
	* libmedia/MediaParser.h: include <memory>
	* libmedia/sound_handler.h: include <cstring>

2007-10-23 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Object.as: more failures about 
	  setting members which has a  normal property in the inheritance
	  chain but a getter-setter higher in the chain.
	* testsuite/actionscript.all/with.as: more failures !
	* macros/sdl.m4: cleanups
	* configure.ac: use test, not the ``['' command, in m4 macros.
	* server/URLAccessManager.cpp (allow): fix assertion checking.
	* testsuite/misc-ming.all/ming_utils.h: provide a CALLFRAME
	  macro to use the syntax recognized by the detected Ming
	  version.
	* testsuite/misc-ming.all/: frame_label_test.c, path_format_test.c:
	  use CALLFRAME instead of callFrame.

2007-10-22 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: don't update viewport size on setLevel,
	  still do in setRootMovie.

2007-10-22 Sandro Santilli <strk@keybit.net>

	* gui/gui.cpp (resize_view): only change scale if rescaling of Stage
	  is allowed (WARNING: might fail if movie starts in noScale mode..)
	* server/asobj/Stage.cpp (setScaleMode): always update movie_root 
	  "allow scale" flag when scaleMode changes. 

2007-10-22  Rob Savoye  <rob@ripple.welcomehome.org>

	* configure.ac: Build Makefiles in cygnal/ACT sub dirs, add metome
	extension. Also display proper values for Boost libs.
	* Makefile.am: Dispplay boost values correctly for missing
	libraries, both required and optional.
	* macros/boost.m4: Make extra libraries used for testing it's own
	BOOST_EXTRA_LIBS variable to avoid linking problems.
	* extensions/metome: New directory for the soon-to-be-available
	metome SDK.
	* extensions/metome/Makefile.am, metome_ext.{h,cpp}: New support
	for Metome SDK.
	
	* configure.ac: Print out a warning for missing boost libraries
	that are only recommended, and not required.
	* macros/boost.m4: Look for some libraries that are only needed
	for testing, but still flag the user if they aren't found.

2007-10-22 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/asobj/Stage.cpp: corrected Stage.width and Stage.height, 
	  fixes bug #21364  

2007-10-22 Sandro Santilli <strk@keybit.net>

	* configure.ac: fix docmentation for --enable-cygnal
	  (is not more --disable-cygnal, as it's off by default).

2007-10-21  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/boost.m4: Add unit_test_framework for Cygnal tests.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/Makefile.am: distribute Derived1.as
	  and Base1.as. distcheck now works for me.
	* testsuite/Makefile.am: distribute gnashrc.in
	* testsuite/misc-ming.all/Makefile.am: provide MEDIADIR
	  macro as absolute path.
	* testsuite/misc-ming.all/NetStream-SquareTestRunner.cpp: 
	  allow load of data from MEDIADIR.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.{cpp,h}: rework the way XML is loaded:
	  read all input and call onData, providing a default one.
	  Still misses a background thread, but is a bit more correct
	  now, in that allows overriding onData.
	* testsuite/actionscript.all/XML.as: succeeds in finding
	  onData in XML.prototype.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* testsuite/Makefile.am: fix MEDIADIR path (for gnashrc)
	* testsuite/actionscript.all/Makefile.am: use testsuite/gnashrc
	  for running tests (so loads from MEDIADIR are allowed).

2007-10-20 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/loadMovieTestRunner.cpp: allow loads from
	  MEDIADIR.
	* testsuite/actionscript.all/XML.as: test where onData is defined.
	* libbase/LoadThread.{cpp,h}: add support for cancelling load
	  (untested).

2007-10-20 Sandro Santilli <strk@keybit.net>

	* testsuite/: .cvsignore, Makefile.am, gnashrc.in:
	  Add a testsuite-local gnashrc to enable loading local
	  resources from the MEDIADIR.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/usage/gnashrc.xml: document new localSandboxPath
	  directive.
	* libbase/rc.cpp: support localSandboxPath (set, append) directive.
	* testsuite/libbase/: TCXXRc.cpp, gnashrc-local.in, gnashrc.in: 
	  test localSandboxPath append and set.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.cpp: call set_base_url *before*
	  create_movie*
	* libbase/rc.h: add a "local sandboxes" configuration.
	  This is not yet allowed to be set in .gnashrc, but
	  can be set by internal calls.
	* server/StreamProvider.cpp: check security also in
	  the local resource case.
	* server/URLAccessManager.{cpp,h}: check local resources
	  against the sandboxes list of RcInitFile.
	* server/impl.cpp (set_base_url): push base url to 
	  the local sandboxes.
	* testsuite/actionscript.all/XML.as: add (failing) test for
	  XML.onData.

2007-10-20 Sandro Santilli <strk@keybit.net>

	* server/URLAccessManager.{cpp,h}, server/asobj/xmlsocket.cpp
	  Don't expose allowHost w/out port, rename allowHost (with port)
	  to allowXMLSocket.

2007-10-19 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fb.cpp: Added a few more key scan codes

2007-10-19 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (file_attributes_loader):
	  Update message and add TODO list based on a talk with
	  Benjamin Otte on #gnash.

2007-10-19 Sandro Santilli <strk@keybit.net>

	* libmedia/VideoDecoder.h: add getPaddingBytes.
	* libmedia/sdl/VideoDecoderFfmpeg.h: implement getPaddingBytes
	  using the ffmpeg define.
	* server/parser/video_stream_def.cpp: use getPaddingBytes
	  to find out how much to pad.

2007-10-19 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fb.cpp, gui/fbsup.h: Preliminary support for keyboard input;
	  implemented mouse handler using Linux Input Subsytem (made new 
	  default); simple built-in touchscreen calibration/conversion;
	  preliminary input device configuration via environment variables

2007-10-19 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.{cpp,h}: split read into
	  readDefineVideoStream and readDefineVideoFrame, make
	  presence of a non-null _decoder member a sign of a
	  completed call to readDefineVideoStream (thus a sign
	  of a statically-defined videostream vs. a dynamically
	  created one [ using new Video ] ).
	* server/swf/tag_loaders.cpp: update calls to video_stream_def
	  ::read*

2007-10-19 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.cpp (read): rework the input
	  buffer padding to be cleaner, safer and a bit faster (only
	  memset the pad); (destructor): get rid of the embedded video
	  frames. Add TODO items.

2007-10-19 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.{cpp,h}: keep _decoder by
	  boost::scoped_ptr. Fixes bug #21284.
	* server/swf/tag_loaders.cpp (video_loader): don't abort on malformed
	  SWFs.

2007-10-19 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* backend/Makefile.am: Only compile render_handler_tri.cpp if
	  using the OpenGL backend.

2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>

	* macros/mtasc.m4: Don't prepend a path to test with "x".

2007-10-19 Markus Gothe <nietzsche@lysator.liu.se>

	* plugin/plugin.cpp, macros/boost.m4: Added year 2007.

2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_cairo.cpp: initTestBuffer: fix a set of
	typos to allow the testsuite to actually test the renderer. No
	XFAILs so far; one XPASS (masks_test2runner.cpp:58).

2007-10-18 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: send onSetFocus and onKillFocus
	  events.

2007-10-18 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: fix an invalidated bounds
	  problem on set/kill focus.

2007-10-18 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/VideoDecoder.h,libmedia/gst/VideoDecoder{Ffmpeg.Gst}.{h,cpp}: 
	  Changed decodeToImage to return a raw image::image_base pointer.
	* server/video_stream_instance.{cpp,h},server/parser/video_stream_def.{h,cpp}:
	  Changed to do decoding of video stream on parsing, and not on demand.

2007-10-18 Chad Musick <chadmusick@msbx.net>

	* testsuite/swfdec/PASSING: More than 20 newly passing tests.

2007-10-18 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: add getActiveEntityUnderPointer method.
	* server/character.h: add virtual isSelectableTextField() method.
	* server/edit_text_character.h: implement isSelectableTextField()
	* gui/gui.cpp: use getActiveENtityUnderPointer and
	  isSelectableTextField to provide an INPUT cursor rather then
	  an HAND when the active entity under pointer is a selectable
	  text field.

2007-10-18 Sandro Santilli <strk@keybit.net>

	* server/: movie_root.{cpp,h}, edit_text_character.cpp:
	  Renamed movie_root::{get,set}_active_entity to
	  movie_root::{get,set}Focus for clarity, and documented it.
	* testsuite/swfdec/PASSING: we now pass
	  addProperty-get-prototypes-{6,7,8}.swf

2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>

	* testsuite/MovieTester.cpp: Conditionally include cairo header.

2007-10-18 Chad Musick <chadmusick@msbx.net>

	* server/Property.cpp: New file -- Definition of properties now requires
	  some support functions.
	* server/GetterSetter.cpp,.h -- Obsolete file removal, functionality moved
	  to Property
	* server/vm/asName.h -- New file, split and combined from abc_block.h and
	  asClass.h
	* libbase/string_table.cpp,.h -- Make all empty strings return 0, make a
	  new function for combining two values with a dot.
	* server/Makefile.am -- Remove GetterSetter files, add Property.cpp
	* server/Property.h -- Combine all 3 types (ordinary, getter/setter,
	  destructive getter/setter) into a single class, Property, using boost::
	  variant. Remove all virtual functions. Add key and namespace.
	* server/PropertyList.h,.cpp -- Change container to a multi-index storing
	  properties by value rather than by pointer, add functions for retrieval
	  by order number (for AS3). Remove all virtual functions.
	* server/array.cpp,.h -- Change get_member signature to match the one in
	  as_object which now includes a namespace.
	* server/asClass.cpp -- Change asMethod and asClass to use an as_object
	  backend
	* server/asClass.h -- Move asName out. Change asMethod and asClass to new
	  signatures.
	* server/as_function.cpp -- Add checks for prototype.
	* server/as_object.cpp -- Chnage to new PropertyList style, some early
	  code for interfaces (ImplementsOp) which should be working soon.
	* server/as_object.h -- Support for new PropertyList. Unfinished support
	  for AS3.
	* server/as_prop_flags.h -- Added flag for static members, changed
	  protected variable to a flag.
	* server/as_value.cpp,.h -- Stubs for implements and namespace support.
	* server/edit_text_character.cpp,.h -- Change to namespace get_member
	* server/namedStrings.cpp,.h -- Add some anonymous strings. These can
	  only be used if you already know their number and are invisible to
	  clients of the object.
	* server/sprite_instance.cpp,.h -- Change to namespace get_member
	* server/stream.cpp -- Depends on Property
	* server/asobj/ClassHierarchy.cpp,.h -- Use SafeStack instead of
	  memoryDispenser, change to conform to new definitions of some classes.
	* server/asobj/Object.cpp -- Make sure construct has Object prototype
	  set as "prototype" members.
	* server/asobj/xml.cpp,.h -- Use namespace get_member.
	* server/parser/abc_block.cpp,.h -- Change to conform to new asClass and
	  asMethod. No longer safe to call read() in non-AS thread. abc_Multiname
	  became asName (merged with asName from asClass.h) and was moved to its
	  own file. Double pool changed from 'long double' to 'double'.
	* server/swf/tag_loaders.cpp -- Remove read() call from loading abc_block,
	  since this is no longer safe to do in loader thread.
	* server/vm/Machine.cpp,.h -- Numerous steps towards completion.
	* server/vm/VM.h -- Add Machine member to VM object.
	* testsuite/server/Makefile.am -- Remove obsolete GetterSetterTest
	* testsuite/server/GetterSetterTest.cpp -- Removed as obsolete.

2007-10-17 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_cairo.cpp: Implement getPixel and
	related methods to enable automated renderer testing.
	* backend/Makefile.am: Add CAIRO_LIBS.
	* gui/gtk_glue_cairo.cpp: Let the renderer deal with
	cairo_t destruction.
	* testsuite/Makefile.am: Add CAIRO_CFLAGS so we can include
	render_handler_cairo.h.
	* testsuite/MovieTester.cpp: Enable Cairo renderer testing.

2007-10-17 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: add initial support for
	  TextField.selectable
	* testsuite/actionscript.all/TextField.as: update expected
	  results.

2007-10-17 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_cairo.cpp: New Cairo implementation.
	Fixes all Cairo bugs currently in Savannah, but adds a set of
	new bugs. The new renderer offers significantly better
	performance and better rendering quality. This implementation
	does not rely on Gnash's own triangulation.
	* backend/render_handler_cairo.h: Renamed set_handle to
	set_context, which is more descriptive.
	* gui/gtk_glue_cairo.{cpp,h}: Updated for set_context.

2007-10-17 Sandro Santilli <strk@keybit.net>

	* server/: as_environment.{cpp,h}, sprite_instance.cpp:
	  Drop useless as_environment::{get,set}_member.

2007-10-17 Sandro Santilli <strk@keybit.net>

	* configure.ac: add --enable-cassert (build with NDEBUG defined by
	  default)
	* server/dlist.{cpp,h}: add isSorted private method
	  to slighly speed up invariant testing.
	* server/edit_text_character.{cpp,h}: Add support for
	  the TextField.onChanged event.

2007-10-17 Markus Gothe <nietzsche@lysator.liu.se>

	* server/asobj/NetStream.h: MIPSPro work-around.
	* configure: Always print BOOST_{CFLAGS, LIBS}
	* macros/boost.m4: Detect boost correctly by two steps. Added GXX.

2007-10-16 Sandro Santilli <strk@keybit.net>

	* server/parser/edit_text_character_def.cpp (get_font): reduce
	  debugging output for a common case.
	* server/character.h: indentation cleanups and get_visible/set_visible
	  made non-virtual.

2007-10-15 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_debug_string): tell apart dangling from
	  rebound soft refs.

2007-10-15 Martin Stransky  <stransky at redhat dot com>

	* plugin/plugin.cpp: don't call NSAPI code after the fork.
	  Patch from https://bugzilla.redhat.com/show_bug.cgi?id=281061.

2007-10-15 Sandro Santilli <strk@keybit.net>

	* server/as_environment.{cpp,h}: have find_object_{dot,slash}syntax
	  support a scope stack.
	* testsuite/actionscript.all/with.as: fix last failing test. Should be
	  easy to add more failing (hint: get variable in one-before-last member
	  of with stack scope).

2007-10-15 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_agg.cpp, backend/render_handler_agg.h, gui/fb.cpp,
	  gui/fltk_glue_agg.cpp, gui/gtk_glue_agg.cpp, gui/kde_glue_agg.cpp,
	  gui/riscos_glue_agg.cpp, gui/sdl_agg_glue.cpp: Don't let the renderer
	  choose the rowstride (bytes per line) as this depends on the GUI
	  and use the rowstride reported by the MIT-SHM extension instead of
	  calculating it.
	* backend/render_handler_agg.cpp: Code cleanup

2007-10-14 Sandro Santilli <strk@keybit.net>

	* gui/fb.cpp: update use of agg_detect_pixel_format
	* server/as_environment.cpp: minor cleanups.

2007-10-14 Sandro Santilli <strk@keybit.net>

	* backend/render_handler_agg.{cpp,h} (agg_detect_pixel_format):
	  return by const char*, fixing a warning raised by gcc 4.2.1
	* gui/gtk_glue_agg.cpp: update use of agg_detect_pixel_format.

2007-10-14 Sandro Santilli <strk@keybit.net>

	* utilities/processor.cpp: support fscommand:quit command.
	* testsuite/swfdec/PASSING: 39 successes found (used to fail just
	  because we didn't support the fscommand:quit command.

2007-10-14 Sandro Santilli <strk@keybit.net>

	* testsuite/check.h: force literal string to std::string conversion in
	  check_equals and xcheck_equals (fixes compiler warnings from gcc >=
	  4.1.x)
	* server/as_environment.cpp (get_variable_raw, set_variable_raw): don't
	  explicitly look in locals for SWF6 and higher, as locals should already
	  be in the scope chain; look in scope chain *before* locals in the
	  SWF5- case (only 'with stack' in that case).
	* testsuite/actionscript.all/with.as: fixed a couple of tests about locals
	  and 'with' stack seek order.

2007-10-14 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (get_variable_raw): reduce calls to
	  string_table::find.
	* testsuite/misc-ming.all/Makefile.am: don't build and run PlaceObject2Test
	  if MING_SUPPORTS_REPLACE_TAG is not defined, don't try to run
	  get_frame_number_testrunner when not building it.
	* testsuite/misc-ming.all/PlaceObject2Test.c: remove /* in comment warning.

2007-10-13  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/agg.m4, curl.m4, ffmpeg.m4, freetype.m4, glib.m4,
	gnashpkgtool.m4, gtk2.m4, gtkglext.m4, jpeg.m4, kde.m4, libXML.m4,
	lirc.m4, ming.m4, mysql.m4, opengl.m4, pango.m4, pthreads.m4,
	sdl.m4, x11.m4: Also test for /usr/lib64, so it doesn't sneak into
	our LDFLAGS. This will cause make distcheck to fail on a 64 bit machine.
	
2007-10-13 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/fbsup.h: Make PS/2 mouse the default (instead of ETurboTouch)

2007-10-12 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/opcode_guard_test2.sc: test that both setTarget
	  and setTargetExpression use the target string instead of pointer for
	  searching the target.
	* testsuite/actionscript.all/with.as: test that target don't need to be
	  stacked in nesting setTarget context.
	  
2007-10-11 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/with.as: test that locals do NOT take
	  precedence over 'with' stack.

2007-10-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/Key.cpp: clean up.
	* testsuite/misc-ming.all/KeyIsDownTest.c: add test for Key.isDown().

2007-10-10 Sandro Santilli <strk@keybit.net>

	* server/LoadVariablesThread.{cpp,h}: throw an exception
	  if stream can't be fetched (NetworkException).
	* server/asobj/LoadVars.cpp: catch NetworkException while
	  constructing LoadVariablesThread. Fixes assertion failure
	  of bug #19901.

2007-10-10 Sandro Santilli <strk@keybit.net>

	* server/asobj/xmlsocket.cpp: don't use non-configured as_environment
	  for user-defined event handlers invocation.

2007-10-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/Key.{h,cpp}: change is_key_down() to take SWF keycode
	  and check the relevant bit in m_unreleased_keys (bit array).

2007-10-10 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (notify_key_listeners): don't use a
	  stack-allocated and non-configured as_environment for user-defined
	  event handlers invocation.

2007-10-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gui.cpp: only handle GUI shortcuts on key down.
	* server/asobj/Key.cpp: rename get_last_key_pressed() to get_last_key().

2007-10-10 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.cpp (process_decl_dict): allow
	  overriding the constant pool. Fixes dict_override.swf
	* testsuite/misc-swfmill.all/: Makefile.am, dict_override.xml:
	  New test for constant pool override (gnash fails, will fix next).

2007-10-10 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-mtasc.all/: Base1.as, Derived1.as, super_test1.as,
	  Makefile.am: test for super, detected an unexpected 'ActionLimit hit'
	  
2007-10-10 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-mtasc.all/function.as, Makefile.am: rename function.as to 
	  function_test.as, fix a name conflict in a case insensitive file system. There
	  is a Function.as in mtasc/std.
	  
2007-10-10 Sandro Santilli <strk@keybit.net>

	* server/swf_function.cpp (call operator): pop call stack frame on
	  exception. Fixes assertion failure on restart reported by bwy in
	  in bug #21295
	* server/as_environment.h: don't use size() or length()
	  when empty() is really meant (in some cases empty() is much
	  faster).

2007-10-10 Chad Musick <chadmusick@msbx.net>

	* server/vm/SafeStack.h: Remove limit on size of grow()
	* server/vm/Machine.cpp: Name changed from server/vm/AbcHandlers.cpp,
	  more work on making it work.
	* server/vm/Machine.h: More work on making it work.

2007-10-09 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp: don't use size() or length()
	  when empty() is really meant (in some cases empty() is much
	  faster).
	* testsuite/misc-ming.all/Makefile.am: remove duplicate rule
	  for PlaceObject2Test.swf (fixes make check).

2007-10-09 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/asobj/Key.{cpp,h}: rename m_last_key_pressed to 
	  m_last_key_event. Add SWF keycode, not gnash keycode to
	  index of keys down. Fixes problems when releasing shift
	  before a character key.

2007-10-09 Chad Musick <chadmusick@msbx.net>

	* server/AS3_OPCODES: Remove file (information up-to-date elsewhere).

2007-10-09 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/PlaceObject2Test.swf, Makefile.am:
	enable an old testcase, it wasn't used actually. Test DLIST tags
	with dynamic depth manipulation. All passed with cvs-head.
	  
2007-10-09 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp (call operator): don't execute anything
	  if scripts are disabled. Fixes bug #21295.

2007-10-08 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* libbase/tu_timer.cpp: Avoid range problems. Fixes bug #21289
	* gui/gui.cpp: fixed draw_poly() call when region debugging is active   

2007-10-08 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: fully inlined destructor, since it has
	  nothing to do.

2007-10-08 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}, testsuite/libbase/TCCXXRc.cpp
	  libbase/curl_adapter.cpp: rename variable and function to _insecureSSL
	  / insecureSSL().
	* gui/kde.cpp: complete keyboard handling from the GUI.
	* server/asobj/Key.cpp (set_key_up): key releases also update
	  m_last_key_pressed, so that the last key released is not necessarily
	  the same as the last key pressed.

2007-10-08 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/AudioDecoderSimple.cpp: Fix stereo/mono resampling.
	* libmedia/sdl/AudioDecoderMad.cpp: Fix compilation and stereo/mono
	  resampling.
	* libmedia/sdl/VideoDecoderFfmpeg.cpp: Free frame after use. Throw
	  bad_alloc, if out of memory.
	* libmedia/sdl/sound_handler_sdl.cpp: Fix decoding multiple times until
	  the required buffer is full.

2007-10-08 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/loop_test9.c: add a test for RemoveObject
	  having effect for out-of-static-zone depths (now the test would
	  segfault with a gnash version prior the fix for bug #21281 - 0.8.1
	  for instance). Head is fine.

2007-10-08 Chad Musick <chadmusick@msbx.net>

	* server/vm/AbcHandlers.cpp: More work on the AS3 interpreter --
	  function calls and such.
	* server/vm/Machine.h: Remove Stack (moved to SafeStack.h), remove
	  CodeStream (moved to CodeStream.h), remove FunctionEntry (becomes
	  State internal class).
	* server/vm/CodeStream.h: Add reInitialize method to allow empty
	  construction.
	* server/vm/SafeStack.h: Add method to reset stack to a certains state.

2007-10-08 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/ming_utils.c: have totals() and friend also
	  print a final line containing grand totals. This will be easier
	  to use for consistency checking from the generic-testrunner.sh.
	* testsuite/misc-ming.all/: Makefile.am, loop_test9.c: test that
	  a PlaceObject-placed instance in a depth higher then 0 (after
	  depth-shift) doesn't get removed on jump-back. Verifies behaviour
	  of bug #21281.

2007-10-07 Sandro Santilli <strk@keybit.net>

	* server/swf/RemoveObjectTag.cpp (loader): don't attempt to unregister
	  a timeline depth if depth is out of the static zone. PlaceObject2
	  does the same avoiding to register the depth in this case. Fixes bug
	  #21281.
	* server/parser/movie_def_impl.cpp (dump_tag_bytes): output cleanup.

2007-10-07 Chad Musick <chadmusick@msbx.net>

	* server/vm/SafeStack.h: New file. Complete definition of a stack
	  which can be used for obtaining references valid for the life of
	  the stack and has facilities for simulating multiple stacks
	  in one stack.  See the class for documentation.

2007-10-07 Chad Musick <chadmusick@msbx.net>

	* server/vm/CodeStream.h: New file. Complete definition of a stream
	  for safely reading code, with necessary reader functions for AS3.

2007-10-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/as_value.cpp (to_number): use boost::lexical_cast instead
	  of strtod to avoid differences in decimal point between locales
	  (not really verified with actionscript behaviour).

2007-10-06 Sandro Santilli <strk@keybit.net>

	* libmedia/sdl/VideoDecoderFfmpeg.cpp (decode): check return from
	  avcodec_alloc_frame.
	* libbase/curl_adapter.cpp (fill_cache): fix compiler warning
	  (printf formats)

2007-10-06 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h}: add init_member and init_property
	  based on string_table::key
	* server/asobj/AsBroadcaster.cpp (initialize): use string_table 
	  keys when already available.

2007-10-06 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/sdl/AudioDecoderFfmpeg.cpp: Release allocate data on errors.
	* libmedia/sdl/sound_handler_sdl.cpp: Allocate active_sound as an object.

2007-10-06 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_attach_movie): remove useless
	  std::string construction.
	* server/parser/movie_def_impl.h: change ExportMap to use
	  case-insensitive string comparison.
	* server/parser/movie_definition.h: update get_exported_resource
	  documentation to mention string matching is always case-insensitive.
	* testsuite/swfdec/PASSING: export-case-# success.

2007-10-06 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Number.as: test conversion of a string
	  with a decimal point to a number (fails when locales have comma
	  instead of dot as the decimal point). See bug #21168.

2007-10-06 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.{h,cpp} (init_string_instance): when in SWF6 fetch
	  constructor from the global object, to use any overrided one
	  (swfdec testsuite contains a test for this).
	* server/vm/ASHandlers.cpp (ActionGetMember): drop special handling
	  for 'length' (it's incorrect and was marked with a FIXME).
	* testsuite/swfdec/PASSING: string-convert-{6,7} succeed now.

2007-10-06 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.cpp (string_index_of): only use second argument
	  if it casts to positive integer.
	* testsuite/actionscript.all/String.as: more tests.

2007-10-06 Sandro Santilli <strk@keybit.net>

	* server/as_function.cpp (function_call): handle the case in which
	  first argument given to Function.call does not cast to an object.
	  The handling is not correct, but at least prevents assertion
	  failures and prints an ascoding error. Fixes bug #21236.
	* testsuite/actionscript.all/Function.as: add few more tests for
	  Function.call(<not-an-object>).

2007-10-05  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/boost.m4: Adjust error messages when boost files aren't
	found by configure.
	* configure.ac: Adjust error messages when boost files aren't
	found by configure.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/String.as: couple more tests for
	  String.indexOf (lots more needed!).
	* server/asobj/AsBroadcaster.{cpp,h} (initialize): query
	  addListener and removeListener methods from the global
	  AsBroadcaster, using any overridden member (shown
	  to be needed by swfdec testsuite).
	* testsuite/actionscript.all/AsBroadcaster.as: the new tests
	  are fixed, added a TODO for adding more.

2007-10-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gui.cpp: Handle key releases again.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/AsBroadcaster.as: add more tests,
	  failing.

2007-10-05  Rob Savoye  <rob@ripple.welcomehome.org>

	* configure.ac: Fix error messages for mising boost files.

	* macros/boost.m4: Check for a directory without "boost" as an
	additional sub directory.

	* macros/boost.m4: Make the --with-options work correctly. Recode
	how all the directories, headers, and libraries get found, or
	configure fails to find any dependant file.

2007-10-06 Chad Musick <chadmusick@msbx.net>
	* server/vm/Machine.h: More comments about functions, some
	  signature corrections.
	* server/vm/AbcHandlers.cpp: Definition of some of the necessary
	  support functions.

2007-10-06 Chad Musick <chadmusick@msbx.net>

	* server/vm/Machine.h: New File. First iteration (not documented,
	  not compilable) of class definition for VM for ActionScript3
	  blocks.
	* server/vm/AbcHandlers.cpp: More regularity, some small changes.

2007-10-05 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/sprite_instance.cpp: Allow attachMovie() to accept also
	  button definitions, not just movie clips

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/: Makefile.am, jump_after_end.xml:
	  Have the test end with an "END OF TEST" trace, and expect that.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/generic-testrunner.sh: add support for consistency
	  checking (-c and -C switches)
	* testsuite/misc-swfmill.all/Makefile.am: expect jump_after_end.swf
	  to end with a PASSED trace (for now this will catch errors in
	  jump after end bugs).

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/jump_after_end.xml: Made the
	  self-contained (almost completely). The problem now is that
	  if it fails it will NOT print nor FAILED nor PASSED so
	  we'll need the test *runner* to implement some sort of
	  consistency check to verify the end of test is reached.
	  We should do this always, btw...

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/jump_after_end.xml:
	  Fixed the XML to *really* do what I intended it to
	  do. Still not self-contained though.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfmill.all/: Makefile.am, jump_after_end.xml:
	  Test that it is completely fine to jump past the END opcode
	  in an action buffer (thanks Chad). Note that the tests in
	  misc-swfmill.all are not automated yet (need to find out how
	  to make use of the Dejagnu.swf lib)

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp: catch less ActionLimitException: in
	  setMovieRoot and in advance (both can trigger immediate execution
	  of actions). Basically I removed from setLevel as it can be called
	  by a child of processAction thus resulting in a missing cleanup.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp: catch more ActionLimitException: in
	  setLevel and in advance (both can trigger immediate execution
	  of actions).

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionSetRegister, ActionPushData):
	  Don't use global registers in a function2 context with local
	  registers.
	* testsuite/swfdec/PASSING: success for register-count.swf and
	  definefunction2-registers-#.swf

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (CommonGetUrl): case-insensitive
	  'fscommand' matching. 

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.{h,cpp}: add readFullTag method not
	  bothering to check for an END opcode thus making read faster.
	* server/swf/DoActionTag.h (read): use action_buffer::readFullTag.

2007-10-05 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.cpp (read): don't give up if an END
	  opcode is not found. You can find real-world cases for a missing
	  END in swfdec testsuite, tipically generated by swfmill.
	* testsuite/swfdec/PASSING: 2 more successes.

2007-10-04 Aleksey Lim <alsroot@member.fsf.org>

	* libmedia/MediaParser.h: wrap avcodec.h include in extern "C"
	  namespace.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: use a new SpriteProxy class for 
	  doing all the soft-reference things. This will now be a flavor
	  of the boost::variant. Advantage of this is we won't keep alive
	  destroyed sprites only because we need their original path for
	  rebinding.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* autogen.sh: reccommend installing libltdl3-dev when libtoolize
	  fails.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_sprite, to_debug_string): use isDestroyed()
	  instead of isUnloaded() to trigger "dangliness" of a soft reference.
	* testsuite/actionscript.all/MovieClip.as: the two new tests about
	  soft references succeed now.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: remove unused functions, call destroy()
	  on characters whos unload() returned false.
	* server/sprite_instance.cpp (dtor): remove useless call to
	  DisplayList::clear()

2007-10-04 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libbase/BitsReader.h: Added doc.
	* libmedia/AudioDecoderSimple.cpp: Another impovement of ADPCM decoding.

2007-10-04 Chad Musick <chadmusick@msbx.net>

	* server/vm/AbcHandlers.cpp: More work on the main interpreter for AS3.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: add destroy() and isDestroyed()
	  members. Will surely help with soft references and hopefully
	  with opcode guarding too.
	* server/movie_root.cpp (cleanupDisplayList): call destroy()
	  on unloaded but still not destroyed characters.
	* server/sprite_instance.{cpp,h}: override destroy() to remove
	  properties.

2007-10-04 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/gst/gstappsink.{c,h}: Updated to match latest gstreamer cvs.
	* libmedia/*: Fix cvs is tags.

2007-10-04 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: add test showing
	  that it's NOT *unload* of sprite triggering soft-references
	  rebinding but rather *destroy* of them !

2007-10-03 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libbase/Makefile.am: Added BitsReader.{h,cpp}
	* server/Makefile.am: Removed BitsReader.{h,cpp}
	* server/BitsReader.{h,cpp}: moved to libbase, and added got_bits().
	* libmedia/AudioDecoderSimple.cpp: Use BitsReader in libbase.
	  Fixed (at least some) adpcm decoding bugs (bug #21177).
	* libmedia/sdl/AudioDecoderFfmpeg.cpp: fix cvs id tag.
	* libmedia/sdl/sound_handler_sdl.cpp: Only stop playback of sound if
	  completely done. If nothing has been decoded assume nothing can be
	  decoded, fixes bug #21219.
	* libmedia/sdl/sound_handler_sdl.h: Only delete decoder if it exists.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: use boost::variant instead of the union.
	  Idea taken from patch #6067. No clever templates used, this is just
	  the basic thing, can be improved in the future. Main reason to have
	  done so is for being able to drop the reference to the original
	  sprite for soft references (still not implemented but now possible).
	* libbase/smart_ptr.h: define intrusive_ptr_{add,drop}_ref for
	  as_object needed for the "clever" boost::get visitor of
	  boost::variant ...

2007-10-03 Sandro Santilli <strk@keybit.net>

	* cygnal/ACT/Makefile.am: don't list subdirs for which no
	  Makefile.am is present. TODO: add a Makefile.am there !

2007-10-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{cpp,h}: make expandPath void and other small cleanups.

2007-10-04 Chad Musick <chadmusick@msbx.net>

	* server/vm/AbcHandlers.cpp: New file. This will become the
	  interpreter for AS3, and I hope to convert the ASHandlers class
	  to this style as well, as it offers some significant clarity
	  and performance gainst.  At the moment, this code won't
	  compile, isn't complete, and isn't even consistent.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_bool*): assert that OBJECT and FUNCTION
	  values are never null.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: stop using m_string_value as a cache
	  for convertion to string (propedeutic for storing the string
	  into the union). clean m_string_value inside drop_refs
	  (should reduce memory use).

2007-10-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{cpp,h}: reference instead of copy for expandpath
	* testsuite/libbase/TCXXRc.cpp, gnashrc.in: tests for insecureSSL
	* docs: add insecureSSL and minor cleanups to gnashrc.xml
	* gui/gnash.cpp, gui/gtk.cpp: comment out broken / disabled movie
	  controls until they work.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/as_value.{cpp,h}: changed to_string and to_string_versioned
	  methods to return by value rather then by const ref. Next step will
	  be only using a string member when needed.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: Test effects of unload
	  on clip bounds (confirms we should clean the drawable on unload).

2007-10-03 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as:
	  more extensive tests for soft references, confirming current
	  gnash behaviour being unbreaked.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/ops.as: more tests for ActionShiftRight
	* server/vm/ASHandlers.cpp (ActionShiftRight): fix new testcases
	  (and the current 3dtris.swf problem with it - see bug #21074).

2007-10-03 Chad Musick <chadmusick@msbx.net>

	* server/vm/ASHandlers.cpp: Drop top of stack in ActionStringCompare,
	  since there are two stack elements on entry and (should be) one
	  on exit.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (unload): clear the drawable when unload
	  (won't be needed anymore).
	* server/sprite_instance.cpp: add support for debugging the drawing
	  API.

2007-10-03 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.{cpp,h}: add numEdges and numPaths
	  methods.

2007-10-02 Sandro Santilli <strk@keybit.net>

	* gui/gui.cpp (restart): call movie_root::reset so scripts are enabled
	  again; (getMovieInfo): add info about wheter scripts are disabled.
	* server/movie_root.{cpp,h}: add disableScripts and scriptsDisabled
	  methods; don't process queued actions if scripts are disabled,
	  disable scripts if ActionLimitException is thrown by execution of
	  an executable code.
	* server/vm/ActionExec.{cpp,h}: re-throw ActionLimitException so all
	  elements of the call stack have a chance to cleanup and the exception
	  is eventually cought by the movie_root.
	* testsuite/swfdec/PASSING: success with script abortion tests.

2007-10-02 Sandro Santilli <strk@keybit.net>

	* server/asobj/xml.{cpp,h}: get environment passed for events
	  invocation purposes.
	* testsuite/actionscript.all/: XML.as, XMLNode.as: use check.as
	  instead of dejagnu.as, add check_totals.
	* server/array.cpp (as_value_custom call operator): use the
	  environment passed to us, not a newly created one.

2007-10-02 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (callMethod): fix order in which
	  args are pushed on the stack [the version taking 2 args].
	* server/asobj/MovieClipLoader.cpp: initialize MovieClipLoader
	  instances as AsBroadcasters, call broadcastMessage for broadcasting,
	  use the environment used in the loadClip call.
	* testsuite/actionscript.all/MovieClipLoader.as: add test for
	  existence of the broadcastMessage function.

2007-10-02 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (testInvariant): non-emptiness of _movies
	  container is NOT an invariant...

2007-10-01 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: remove the error-prone ::restart method.
	* testsuite/MovieTester.{cpp,h}: implement proper restart method.

2007-10-01 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: add a clear() method for clearing
	  everything managed by the movie_root/stage. Intended to be called
	  right before a brand new setRootMovie call (for restart).
	* gui/gui.cpp (menu_restart): get a real restart, including flash
	  variables settings and sure about the real initial movie_definition
	  that started everything.

2007-10-01 Sandro Santilli <strk@keybit.net>

	* gui/gui.{cpp,h}: add movie_definition and movie_root members,
	  add _started member to postpone kick-start (movie_root::setRootMovie
	  call) in case we started in "stop" mode [ fixed bug #21212 ].
	  Avoid notifying mouse and key events to the core lib if in stop
	  mode.
	* gui/Player.{cpp,h}: update use of the Gui class.

2007-10-01 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp: cleanups in opcode guard code.

2007-10-01 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/curl_adapter.cpp: use curl_multi_info_read to get
	  better information about stream connections. Pass on CURL errors
	  if transaction fails (e.g. for self-certified SSL sites like Savannah).
	  Log HTTP code of all transactions. 400 and above logged as error.

2007-09-30 Sandro Santilli <strk@keybit.net>

	* libbase/Makefile.am, libmedia/Makefile.am: remove no-dependencies
	  option. The option is still in libltdl/Makefile.am, dunno if it
	  makes sense there either.

2007-09-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/: Makefile.am,
	  action_execution_order_test8.c: build the test in SWF5 and SWF6 
	  version, to verify opcode guard being is not dependent on version
	  (well, at least not on those two versions, SWF5 including
	  curveball.swf).

2007-09-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/opcode_guard_test2.sc: test that unloaded
	  but still not removed current target is still used for finding
	  variables.
	* testsuite/misc-swfc.all/Dejagnu.sc (xtotals): call xpass on
	  unexpected success.

2007-09-30 Sandro Santilli <strk@keybit.net>

	* libmedia/: MediaParser.h, VideoDecoder.h, AudoDecoder.h:
	  virtual classes need virtual destructors, or destructors of
	  subclasses will not be invoked be deleting instances by
	  base class pointer !

2007-09-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/opcode_guard_test.c: add xtotals() call.
	* testsuite/actionscript.all/dejagnu_so_init.as: set and invoke
	  utility functions from/to _root. Fixes some scope chain problems
	  we have in Gnash, better tested in a more focused testcase.
	* testsuite/actionscript.all/with.as: total runs check succeed
	  with the change above.

2007-09-30 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/check.as: rename totals_check,
	  xtotals_check to check_totals() and xcheck_totals (easier
	  to grep for 'xcheck').
	* testsuite/actionscript.all/with.as: update calls to check_totals()
	  and xcheck_totals()
	* testsuite/misc-ming.all/ming_utils.c (Dejagnu.xtotals): call xpass
	  un unexpectedd success.

2007-09-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/curl_adapter.cpp: allow, with security warning, override
	  of curl's SSL certificate verification when requested in gnashrc.
	  Equivalent to curl --insecure.
	* libbase/rc.{cpp,h}: 'set insecureSSL on' disables SSL certificate
	  verification, thus allowing connections from the standalone player
	  to https:// sites when the certificate is invalid or untrusted.

2007-09-30 Sandro Santilli <strk@keybit.net>
	
	* server/environment.{h, cpp}: get_variable_raw() set 'this' to the orignial target
	  instead of the current one.
	* server/vm/ActionExec.{h, cpp}: getThisPointer() returns the original target for
	  golbal code. 
	* testsuite/actionsrcipt.all/with.as: xchecks to checks(fix 'this' context)
	  
2007-09-30 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/movieclip_destruction_test3.sc: '_root' is always
	  defined as tests shows.
	  
2007-09-30 Markus Gothe <nietzsche@lysator.liu.se>

	* libbase/tu_file.cpp: __SGI_LIBC_USING_FROM_STD(va_list).
	* libbase/Makefile.am: Don't include OPENGL_INCL, it might direct you
	  /usr/include on some systems and it doesn't seem necessary...
	* libmedia/Makefile.am: Added libltdl-stuff from libbase/Makefile.am.

2007-09-29 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/: check.as, with.as: use totals_check
	  and xtotals_check for macros, to avoid confusions.
	  Will come back on this on monday...

2007-09-29 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/: AsBroadcaster.as, Boolean.as,
	  Camera.as, Color.as, ContextMenu.as, CustomActions.as, Date.as,
	  Error.as, Function.as, Global.as, Inheritance.as, Key.as,
	  LoadVars.as, LocalConnection.as, Math.as, Microphone.as, Mouse.as,
	  MovieClip.as, MovieClipLoader.as, NetConnection.as, NetStream.as,
	  Number.as, Object.as, Selection.as, SharedObject.as, Stage.as,
	  String.as, System.as, TextField.as, TextSnapshot.as, Video.as,
	  XML.as, XMLNode.as, XMLSocket.as, array.as, case.as,
	  delete.as, enumerate.as, getvariable.as, ops.as, rtmp.as,
	  swap.as, targetPath.as, toString_valueOf.as:
	  Add a totals() call.
	* testsuite/actionscript.all/check.as: add totals and xtotals macros.
	* testsuite/actionscript.all/with.as: add totals(x) and xtotal(x)
	  calls
	* testsuite/actionscript.all/dejagnu_so_fini.as: remove the totals()
	  call.

2007-09-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/ming_utils.c (Dejagnu class): 
	  add totals(n, msg)  and xtotals(n, msg) to check number
	  of tests being run.

2007-09-29 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* docs: update Mozilla plugin install information to reflect current
	  state. Task #7340 contains ideas for improving installation.

2007-09-29 Chad Musick <chadmusick@msbx.net>

	* New: server/asClass.h,.cpp: Several different classes which work
	  together to construct a type library for ActionScript 3.  Work is
	  in progress to make this glean the same information from the current
	  ActionScript 2 information (through the Global object, as well
	  as hand coding) so that the 'implements' op can be written and so
	  that various AS2 things will work better.  This is not yet complete.
	  Because this code is in flux (though currently not broken), it is
	  not yet extensively commented.
	* server/Makefile.am: Add new files
	* server/namedStrings.h,.cpp: New strings for the AS3 namespaces.
	* server/parser/Namespace.h: Add resource marking -- this file is
	  going to be obsolete as soon as dependencies are verified.
	* server/parser/abc_block.h,.cpp: Update to be more modular, and to
	  build a type library from AS3 tag.
	* server/vm/VM.cpp: Change to registration method for new types.
	* New: Various .cvsignore files

2007-09-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/: Dejagnu.sc, check.sc,
	  opcode_guard_test2.sc: add and use xtotals.
	* testsuite/actionscript.all/toString_valueOf.as: more tests for
	  TextField, toString and comparison..

2007-09-29 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/actionscript.all/with.as: more tests for setTarget and found
	  the Dejagnu clip functions might be out of scope chain, and explicitly
	  targeting also not work.
	* testsuite/misc-swfc.all/opcode_guard_test2.sc, Makefile.am : test opcode 
	  guard with setTarget. seems too much actions get discarded than expected.
	  
2007-09-28 Sandro Santilli <strk@keybit.net>

	* libbase/rc.cpp: use fprintf rather then log_XXX during parsing.
	* testsuite/actionscript.all/toString_valueOf.as: more tests,
	  check->check_equals.

2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{h,cpp}: move list parsing into a function; enable
	  'set <list> off' for disabling previously parsed lists. Add
	  error message when colons found in a list.
	* testsuite/libbase/TCXXRc.cpp, gnashrc-local.in: add test for
	  whitelist override.
	* docs: update user manual.

2007-09-28 Bernhard Rosenkraenzer <bero@arklinux.org>

	* configure.ac: rework SIZET_FMT detection to stop at first
	  success. See bug #21182.

2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/Makefile.am: Compile gstgnashsrc.{c,h} when gstreamer
	  is the mediahandler.

2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/AudioDecoder.h, libmedia/AudioDecoderNellymoser.{cpp,h},
	  libmedia/AudioDecoderSimple.h, libmedia/MediaBuffer.h, 
	  libmedia/MediaDecoder.h, libmedia/MediaParser.h libmedia/VideoDecoder.h,
	  libmedia/gst/VideoDecoderGst.h, libmedia/gst/gstappbuffer.{c,h},
	  libmedia/gst/gstappsink.{c,h}, libmedia/gst/gstappsrc.{c,h},
	  libmedia/gst/sound_handler_gst.h, libmedia/sdl/AudioDecoderFfmpeg.{cpp,h},
	  libmedia/sdl/AudioDecoderMad.{h,cpp}, libmedia/sdl/MediaDecoderSdl.{h,cpp},
	  libmedia/sdl/MediaParserFfmpeg.{h,cpp}, libmedia/sdl/sound_handler_sdl.h,
	  libmedia/sdl/VideoDecoderFfmpeg.h: Update docs.
	* libmedia/sdl/VideoDecoderFfmpeg.cpp: Fix memleak. Fixes bug #21180.
	* libmedia/sdl/sound_handler_sdl.cpp: Use the internal ADPCM decoder.

2007-09-28 Sandro Santilli <strk@keybit.net>

	* server/as_function.{cpp,h}: Add a constructor
	  taking no args to use when a default prototype (iface)
	  is wanted. The other constructor, taking an interface
	  will be used when willing to control wheter or not a
	  prototype should be used (TextField don't have one in SWF5
	  and lower).
	* server/builtin_function.h: Same as with as_function, have
	  a constructor taking on interface for a default one, use
	  a NULL interface as meaning we don't want to expose a
	  prototype.
	* server/edit_text_character.cpp: don't set a prototype for TextField
	  class in SWF5, make TextField instances of object when TextField
	  has no prototype.
	* testsuite/actionscript.all/toString_valueOf.as: one more success.


2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac, testsuite/libbase/TCXXRc.cpp, gnashrc-local.in: add
	  second rc file and test for append blacklist.
	* docs: update user manual with black- and whitelist information.

2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.cpp: for whitelists and blacklists, 'set' overrides
	  lists from previous files, 'append' adds to previous files.
	* testsuite/libbase/gnashrc.in: update tests, replace colons (old
	  behaviour) with spaces (new behaviour) in lists. Please update
	  your own lists, as old behaviour must eventually disappear.

2007-09-28 Sandro Santilli <strk@keybit.net>

 	* testsuite/actionscript.all/toString_valueOf.as: few more tests
	  for TextField.toString.

2007-09-28  Rob Savoye  <rob@ripple.welcomehome.org>

	* gui/gtk.cpp: Add support for LIRC, if it's running. Add event
	handler for LIRC messages.

2007-09-28  Rob Savoye  <rob@ripple.welcomehome.org>

	* extensions/Makefile.am: Add dbus to DIST_SUBDIRS.
	
	* libbase/extension.cpp: Initialize the entry first so the loop
	actually works.
	* extensions/dbus_ext.h, dbus_ext.cpp: Minimal code stubs for a
	soon to be Dbus extension.
	* configure.ac: Add extensions/dbus. Drop calling
	GNASH_PATH_LIRC, as Gnash has it's own LIRC client code, and
	doesn't use the lirc_client API anymore.
	* macros/dbus.m4: New macro for Dbus support.
	* extensions/Makefile.am: Build dbus extension if requested.
	
2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libbase/Makefile.am, libmedia/sdl/VideoDecoderFfmpeg.h,
	  server/asobj/NetStreamFfmpeg.cpp: Fix building with libmedia.
	* libmedia/gst/VideoDecoderGst.{cpp,h}: Small comment update.

2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libmedia/, libmedia/sdl/, libmedia/gst/,
	  (in libmedia:) AudioDecoder.h, AudioDecoderSimple.{h,cpp}, Makefile.am,
	  AudioDecoderNellymoser.{h,cpp}, FLVParser.{h,cpp}, MediaDecoder.h, 
	  MediaParser.h, SoundInfo.h, MediaBuffer.h, VideoDecoder.h, sound_handler.h,
	  (in libmedia/sdl:) AudioDecoderFfmpeg.{h,cpp}, AudioDecoderMad.{h,cpp},
	  MediaDecoderSdl.{h,cpp}, MediaParserFfmpeg.{cpp,h}, VideoDecoderFfmpeg.{h,cpp},
	  sound_handler_sdl.{h,cpp},
	  (in libmedia/gst:) VideoDecoderGst.{h,cpp}, sound_handler_gst.{h,cpp},
	  gstgnashsrc.{h.c}, gstappbuffer.{c,h}, gstappsink.{c,h}, gstappsrc.{c,h}:
	  Files added for the new libmedia (finally!!). Some og theese files are moved
	  from the backend/ and libbase/ folders (see below). Not all files are yet in use.
	* backend/sound_handler*, libbase/embedVideoDecoder*: Moved to libmedia.
	* Makefile.am, configure.ac, backend/Makefile.am, gui/Makefile.am, 
	  server/Makefile.am, server/asobj/Makefile.am, server/parser/Makefile.am,
	  server/vm/Makefile.am, testsuite/Makefile.am, testsuite/misc-ming.all/Makefile.am,
	  testsuite/movies.all/Makefile.am, testsuite/samples/Makefile.am,
	  utilities/Makefile.am: Added the new libmedia to the build system.
	* libbase/FLVParser.h: Moved some declerations inside the class to avoid
	  conflicts with MediaParser.h.
	* server/video_stream_instance.{cpp,h}, server/parser/video_stream_def.{cpp,h}:
	  Use VideoDecoder instead of embedVideoDecoder.
	* server/swf/tag_loaders.cpp: Don't decode and resample the ADPCM and raw audio
	  before passing to the soundhandler.
	  Read more about libmedia here: http://wiki.gnashdev.org/wiki/index.php/Main_Page

2007-09-28 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: drop the get_text_value override here.
	* testsuite/actionscript.all/: toString_valueOf.as, MovieClip.as:
	  more successes.

2007-09-28 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/toString_valueOf.as: more
	  xcheck => xcheck_equals (easier to tell what's going on).
	
2007-09-28 Sandro Santilli <strk@keybit.net>

	* server/as_object.h: add useCustomToString method to handle corner
	  cases for which an ActionScript class doesn't want to use toString
	  methods, when available, for converting to a string.
	* server/as_value.cpp (to_string): check with useCustomToString if
	  for an object value we should or not call the ActionScript toString
	  method.
	* server/asobj/string.cpp: override useCustomToString to return false
	  and act as dumb and complex as the proprietary player (urgh)
	* testsuite/actionscript.all/toString_valueOf.as: two tests fixed.
	* testsuite/misc-ming.all/get_frame_number_test.c: one test fixed.
	* testsuite/swfdec/PASSING: three tests fixed.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: test that parseInt() would
	  call a custom toString() function against first parameter, if an
	  object.

2007-09-27 Bastiaan Jacques <bastiaan@bjacques.org>

	* gui/gtk{.cpp,sup.h}: Introduce addFDListener, which will make the
	GDK event loop poll the specified file descriptor and execute the
	specified callback if data is to be read from the file desciptor.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/as_object.cpp (setPropFlags): properly convert the properties
	  to lowercase for SWF < 7.
	* testsuite/actionscript.all/String.as: successes in unprotecting
	  {String,Object}.prototype.toString from deletion.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/String.as: tests for toString and it's
	  deletion/unprotection from deletion (succeeds from SWF7 and higher,
	  fails up to SWF6)

2007-09-27 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Global.as: add test for
	  parseInt(<stringObject>).
	* server/asobj/Global.cpp (as_global_parseint): fix
	  the parseInt(<stringObject>) case
	* testsuite/actionscript.all/toString_valueOf.as: xcheck =>
	  xcheck_equals

2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gnash.cpp: remove ESC = Quit from gnash --help output. It's not true
	  and would potentially interfere with movie key events if it were. Ctrl-B
	  commented out, because it also doesn't do anything.
	* gui/gtk.cpp: code cleanups, internationalization.

2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* docs/C/usage.xml, gui/gnash.cpp: add/update Ctrl-L
	* gui/gui.cpp: make keyboard shortcuts work for both upper and lower
	  case. Correct step back ('[') and forward (']'), which are documented to
	  need Ctrl and were the wrong way round. Function menu_step_forward
	  is correctly called, but apparently doesn't work.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.{cpp,h}: add restart() method.
	* testsuite/misc-ming.all/simple_loop_testrunner.cpp: fix expected
	  invalidated bounds: we expect it to be the WORLD range on start
	  and restart. Test ::restart itself.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h}: add the concept of an 'invalidated'
	  stage/movie_root. The Stage is only invalidated when the background
	  color changes, dunno if it should also be invalidated by changes
	  in the _levels.. maybe I'm using a confusing terminology here...
	  Anyway this fixes bug #21169 and probably allow for cleanups 
	  in the gui code, where some paranoia is used to tell the first
	  ::display call apart from subsequent, exactly for the invalidated
	  bounds on startup problem.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (restart): rework restart mechanism
	  by actually re-instantiating the root from it's definition.

2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/movie_root.cpp: move level0->restart()
	  to avoid assertion failure.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp (call operator): re-enable
	  opcode-guard but guard current target, not original
	  one. Keeps feed.swf and curveball.swf fixed and also
	  fixes the tests in our testsuite that where expected
	  to fail since disabling the opcode guard.
	* testsuite/misc-ming.all/action_execution_order_test8.c,
	  testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
	  testsuite/misc-swfc.all/movieclip_destruction_test3.sc:
	  success in the opcode-guard tests.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_member): make "_global"
	  a property (althought non-proper) of MovieClip. Fixes failures
	  in MovieClip.as.

2007-09-27 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/actionscript.all/Movieclip.as, XML.as: fix a few unstable checks.
	  and a few more tests.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/parser/action_buffer.cpp (disasm_instruction): neater output.
	* server/vm/ActionExec.cpp: tweak action verbosity output.

2007-09-27 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.{cpp,h}: add dumpActions() debugging function
	  useful to tell which opcode are discarded due to opcode-guard.
	  (change #if 0 to #if 1 in the opcode-guard code to see).
	  For the curveball.swf case, the unloading opcode is a
	  GotoLabel("Serve"), followed by a Play and a SetTarget which are
	  discarded when opcode-guard is in effect.

2007-09-27 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/opcode_guard_test.c, Makefile.am: new testcase
	  for opcode guard.
	* testsuite/misc-swfc.all/edittext_test1.sc: more tests, passed.
	  
2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (get_member): forget that
	  _root as undefined when unloaded thing. Broke other
	  tests in the testsuite.
	* testsuite/misc-ming.all/action_execution_order_test8.c,
	  testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
	  testsuite/misc-swfc.all/movieclip_destruction_test3.sc:
	  Expect the 3 failures introduced by removal of opcode-level
	  unloaded guard. We know that 2 real-world movies are fixed
	  by removing that opcode-level guard, so we likely need 
	  more testing of this thing. 

2007-09-26 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/: action_execution_order_test10.sc,
	  action_execution_order_test12.sc, edittext_test1.sc,
	  movieclip_destruction_test2.sc, movieclip_destruction_test3.sc,
	  movieclip_destruction_test4.sc, soft_reference_test1.sc:
	  Add expected number of tests run in the totals() call.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (get_variable_raw): don't handle _root and
	  _levelX in any special way, they are just sprite members !
	* server/sprite_instance.cpp (get_member): _root doesn't exist if
	  we're unloaded.
	* server/vm/ActionExec.cpp (call operator): drop opcode-level
	  unloaded guard. Fixes bugs #21069 (feed.swf) and #20996
	  (curveball.swf) w/out reopening #20974 (sonic.swf). 
	  Changes in as_environment.cpp and sprite_instance.cpp above
	  do the rest for misc-ming and misc-swfc tests..

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/parser/morph2_character_def.cpp (read):
	  Don't print malformed swf errors if number of paths in defining
	  shapes don't match: only edges matter.
	* gui/gtk.cpp (gdk_to_gnash_key): GDK_ooblique => GDK_oslash
	  (gtk-2.0 in debian stable doesn't define the former).
	* server/: BevelFilter.h, BlurFilter.h, ConvolutionFilter.h,
	  DropShadowFilter.h, GlowFilter.h, GradientBevelFilter.h,
	  GradientGlowFilter.h: include <boost/cstdint.hpp> for XintXX_t.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (define_sound_loader): don't delete
	  the sound data, ownership was transferred to the sound hanlder.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (equals): in SWF5, functions are
	  considered null types for what concerns equality.
	* testsuite/actionscript.all/: Function.as,
	  Inheritance.as, Object.as, toString_valueOf.as: 
	  new successes.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (dump_global_registers): better
	  presentation for global registers.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/PropertyList.{cpp,h}: add dump to map.
	* server/as_object.{cpp,h}: add dump_members to map.
	* server/as_environment.cpp: implement dumper for local
	  variables.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp (call operator): initialize maxBranchCount
	  once at start of function; include PC of last jump in maxBranchCount
	  exception.

2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: More moving menu items about.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/ops.as: add test for bitwise and between
	  negative and positive number.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h (create_sound): document meaning of a NULL
	  data.
	* backend/sound_handler_gst.cpp (create_sound): don't choke on NULL
	  data.
	* server/swf/tag_loaders.cpp (sound_stream_head_loader): mek the call
	  to create_sound() with NO data easier to read.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h: add assign() and constructor taking
	  a memory buffer to the Buffer class.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h (Buffer::reserve): don't try to copy
	  from the NULL pointer.

2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp,gtksup.h: add Refresh menu item, add gtk version checks
	  for some stock menu items, reorder and add stock images to Movie
	  Control menu.
	* gui/gui{cpp,h}: Force immediate redraw instead of waiting for next
	  frame.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h: add more services to the
	  Buffer class (sounds like reinventing the std::vector class
	  actually).

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h: define a Buffer class
	  to avoid duplicating code within the different
	  versions of sound_data and active_sound.
	* backend/sound_handler_gst.{cpp,h}: Use a Buffer
	  member in the sound_data.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler.h: document fill_stream_data return value.
	* backend/sound_handler_gst.{cpp,h}: Make buffer member of sound_data
	  private, provide an ::append() function with optimized reallocs.
	  Makes ninja parsing much faster. Same should be done for ffmpeg...
	  See http://wiki.gnashdev.org/wiki/index.php/NinjaProfile.

2007-09-26 Sandro Santilli <strk@keybit.net>

	* backend/: sound_handler.h, sound_handler_gst.{cpp,h},
	  sound_handler_sdl.{cpp,h}: changed fill_stream_data
	  interface to take ownership of the data array.
	  Data is still copied, but can now be optimized locally
	  in each sound hanlder.
	* server/swf/tag_loaders.cpp (sound_stream_block_loader):
	  update use of fill_stream_data.

2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: change Oslash to Ooblique - GDK_Oslash is evidently
	  not defined in all gtk-2.0 versions.

2007-09-26 Chad Musick <chadmusick@msbx.net>

	* server/vm/ActionExec.cpp: If the stack is empty, there was not
	  an exception. Check for an empty stack first to avoid reading a
	  non-existent value.

2007-09-25 Sandro Santilli <strk@keybit.net>

	* gui/gui.{cpp,h}: port SKIP_RENDERING_IF_LATE to use WallClockTimer.

2007-09-25 Sandro Santilli <strk@keybit.net>

	* server/parser/sprite_definition.h (ensure_frame_loaded): don't
	  assume the target frame has always been loaded, as we might
	  have loaded less frames then advertised in header.
	* server/parser/sprite_definition.cpp (read): don't change 
	  total frame count if zero. We wan't to respect it for _totalframes
	  to return the correct value.
	* server/sprite_instance.{cpp,h}: don't assume m_current_frame is less
	  then frame count or even loaded frames, as we might have loaded NO
	  frames too; use a std::set rather then a vector of boolean to tell
	  wheter init actions for a given frame have been executed; check
	  frames loaded count when needed.
	* server/movie_instance.cpp (advance, stagePlacementCallback): drop
	  the frames loaded count check, it's now in sprite_instance.

2007-09-25 Sandro Santilli <strk@keybit.net>

	* doc/C/usermanual/usage/gnashrc.xml: document StreamsTimeout
	  directive, remove duplicated line for StartStopped.
	* libbase/: Makefile.am, WallClockTimer.{h,cpp}:
	  New class for wall-clock timing. Interface borrowed
	  by boost::timer, but this one uses wall-clock and
	  talks milliseconds instead of seconds.
	* libbase/rc.{cpp,h}: add support for streamsTimeout
	  setting.
	* testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test
	  streamsTimeout setting.
	* libbase/curl_adapter.cpp (fill_cache): implement
	  stream timeout.

2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/gnash.h: fix typo in key::codeMap.

2007-09-25 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (set_member): handle attempts
	  to set _width and _height to non-finite or negative values.
	  Fixes assertion failures in playing
	  flvplayer-debug-lulutv-beta4.swf.

2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: clean up properties dialogue.
	* gui/gui.{h,cpp}: add menu_refresh_view() and refresh_view() to gui
	  with shortcut Ctrl-L. Now forces full redraw of next frame, but
	  should in future force immediate redraw.
	* gui/gnash.cpp: add Ctrl-L to gnash -h.

2007-09-25 Chad Musick <chadmusick@msbx.net>

	* macros/boost.m4: Look for multi_index directory in boost include
	  directory. No library is needed, headers only.

2007-09-25 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/registerclass_test3.sc:
	  Test that registerClass effects are visible from withing actions
	  contained in the same frame as the target clip is placed, even if
	  DoAction comes before DoInitAction, which itself can't see those
	  effects.

2007-09-25 Zou Lunkai <zoulunkai@gmail.com>
	
	* gui/sdl.cpp, gui/sdlsup.h: add sdl_to_gnash_key() and sdl_to_gnash_modifier(),
	  cleanups.
	* server/button_character_instance.cpp: on_event() don't respond to keypress event
	  when keycode is 0(INVALID).
	  
2007-09-25 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/registerClassTest2.c: one more test.
	* testsuite/misc-swfc.all/register_class_test3.sc, Makefile.am: one more testcase.
	  all passed.
	  
2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gui.cpp: change shortcut keys to lower case restore old
	  behaviour.

2007-09-25 Chad Musick <chadmusick@msbx.net>

	* server/VM.cpp,.h: Add ClassHierarchy object to VM. Doesn't yet
	  mark objects, though it will very soon.
	* server/asobj/ClassHierarchy.cpp,.h: Extend to use as a namespace
	  object for ActionScript independent of the "Global" object.
	* server/asobj/Global.cpp,.h: Accept a passed ClassHierarchy,
	  rather than stack constructing one.
	* server/parser/Makefile.am: Add asobj directory for use of
	  ClassHierarchy by abc_block.
	* server/parser/Namespace.h: Namespaces contain names, and this
	  enables that.
	* server/abc_block.h: Change Namespaces to be stored by pointer,
	  since the ClassHiearchy object does the creation now.
	* server/abc_block.cpp: More parsing. Validate super class
	  of all declared classes, declare stubs in the correct namespaces.
	
2007-09-24 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/gnash.h: correct some keycodes, extend support to
 	  extended ascii.
	* gui/gtk.cpp: clean up and extend keyboard mapping.

2007-09-24 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: clarify
	  test for bogus __proto__ delayed construction. We still need
	  to find a way to verify registerClass effects handling time.
	* server/asobj/xml.cpp: set _status to min 32bit signed int
	  if value is not a number, cast to_number() to an int otherwise.
	* testsuite/actionscript.all/XML.as: two more successes.

2007-09-24 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/action_execution_order_test5.c:
	  replicate tests run from SWFACTION_INIT into SWFACTION_CONSTRUCT.
	* testsuite/actionscript.all/XML.as: more test for .status.
	  See patch #6178 for the why.

2007-09-24 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/action_execution_order_test5.c: tests _proto__
	  property of parant/child/brother clips at onInitialize time.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: add few more 
	  tests for understanding the interesting __proto__ property.
	  
2007-09-24 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: moved ActionScript object
	  construction into its own method. A change introduced by
	  this commit is that onClipConstruct/onConstruct will be invoked
	  after tags of frame0. Our testsuite detected no changes (so we
	  need more). Youtube still works :)

2007-09-24 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/action_execution_order_test10.sc: found a way to
	  trigger user defined onConstruct with swfc.
	* testsuite/misc-ming.all/loop_test6.c: add test for onClipInitialize called
	  when jumping-back with onClipUnload defined.
	  
2007-09-24 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/loop_test6.c: Add test for onClipInitialize
	  also NOT called when jumping-back to after the character lifetime.

2007-09-24 Chad Musick <chadmusick@msbx.net>

	* server/namedStrings.h: More documentation,
	  remove duplicate enumeration
	* server/namedStrings.cpp: Don't duplicate string "Stage".

2007-09-24 Chad Musick <chadmusick@msbx.net>

	* configure.ac: Add requirement of boost serialization library
	* macros/boost.m4: Add requirement of boost serialization library

2007-09-23 Chad Musick <chadmusick@msbx.net>

	* server/namedStrings.cpp,.h: New files. Move pre-load string
	  enumeration from as_object and add new enumerations for the
	  known ActionScript classes.
	* server/asobj/ClassHierarchy.cpp,.h: New files. Delay loading
	  ActionScript classes until they are needed.  At the moment,
	  does not support loading them as extensions, though this is
	  planned.
	* server/Makefile.am: Add new files
	* server/Property.h: Define a new type DestructiveGetterSetterProperty
	  which servers as a place-holder to allow transparent loading
	  of resources when the value is fetched.
	* server/PropertyList.h,.cpp: New functions to allow use of the
	  (self)Destructive getters.
	* server/as_function.cpp as_object.cpp,.h as_value.cpp
	  edit_text_character.cpp movie_root.cpp sprite_instance.cpp
	  swf_function.cpp textformat.cpp: Change to new string enums.
	* server/asobj/AsBroadcaster.cpp ContextMenu.cpp NetStream.cpp
	  Stage.cpp xml.cpp: Change to new string enums.
	* server/asobj/Global.cpp: Use new ClassHierarchy object to
	  delay-load actionscript classes, except for Object, Function, Array.
	* server/asobj/Makefile.am: Add new files
	* server/parser/abc_block.cpp,.h: More work (still incomplete) on
	  parsing ActionScript 3.
	* server/vm/ASHandlers.cpp VM.cpp: Change to new string enums.
	* testsuite/misc-ming.all/KeyTest-Runner.cpp: Change to new string enums.
	* libbase/extension.cpp,.h: Add a function to load a library by
	  naming both the library and the function to be called.

2007-09-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/init_action_test.c:
	  Test that prototype of sprites have been set up to MovieClip one
	  at time of onClipInitialize call.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.swf:
	  Test that just-placed sprites (at time of init actions execution)
	  are instances of Object, not MovieClip !!

2007-09-22 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (stagePlacementCallback): notify
	  INITIALIZE event.
	* testsuite/misc-ming.all/registerClassTest2.c: 2 more successes.
	* testsuite/swfdec/PASSING: 44 more successes !!

2007-09-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/registerClassTest2.c,
	  testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
	  Expect the failures and the success introduced by reverting
	  the change which broke youtube.

2007-09-22 Chad Musick <chadmusick@msbx.net>

	* server/parser/abc_block.cpp: Change data() to &...front() since
	  data() is not standard.

2007-09-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/Dejagnu.sc: add 2 args to the totals()
	  call, one if which is expected of tests to be run, if it doesn't
	  match actual number of tests run will print and record a FAIL
	  message.
	* testsuite/misc-swfc.all/check.sc: accept an arg in the totals()
	  macro to tell how many tests in total are expected to be run.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: expect
	  33 tests to be run.

2007-09-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: remove
	  redundant test.
	* server/sprite_instance.cpp (execute_frame_tags): revert the 
	  change in init action execution which blew up youtube.
	  We get more unexpected failures then unexpected succeses with
	  this, and I won't change them to *expected* for now.
	  I just felt this patch will limit annoyance to actual users while
	  we seek a better solution.

2007-09-22 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp (processQueuedActions): fix a memory leak.
	  Thanks dli on #gnash for finding out.

2007-09-21 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_tri.{cpp,h}: Don't assume the
	elements in a std::vector are stored in contiguous memory.
	Whenver that must be true, copy the elements into a new
	block of memory. Store mesh_sets in the cache as non-
	pointer types, so we get automatic memory management. Use
	std::sort rather than qsort on the cache vector.

2007-09-21 Chad Musick <chadmusick@msbx.net>

	* libbase/tu_file.h: Add support for reading 64-bit doubles.
	* server/impl.cpp: Add abc_loader to list of loaders.
	* server/stream.cpp,.h: Support necessary read types for AS3.
	* server/parser/Makefile.am: Add new files
	* server/parser/abc_block.cpp,.h: Changes to parse AS3.
	* server/swf/tag_loaders.cpp,.h: Loader for action block (AS3)

2007-09-21 Sandro Santilli <strk@keybit.net>

	* server/dlist.h (testInvariant): fix a cast discarding const
	  qualifier.
	* server/sprite_instance.cpp (execute_frame_tags): optimized
	  execution loop and avoid calling both execute_state and 
	  execute_action (this is propedeutic for DoInitAction possibly
	  needing to execute in both cases).

2007-09-21 Sandro Santilli <strk@keybit.net>

	* server/character.h, server/dlist.cpp,
	  server/button_character_instance.{cpp,h},
	  server/movie_instance.{cpp,h}, server/movie_root.cpp,
	  server/sprite_instance.{cpp,h},
	  server/video_stream_instance.{cpp,h}:
	  Rename character::construct to character::stagePlacementCallback
	  and update documentation to help clarity.

2007-09-21 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (goto_frame): make
	  sure m_current_frame always reflect the frame number
	  in which the control tags being executed were defined.

2007-09-21 Sandro Santilli <strk@keybit.net>

	* server/vm/action.cpp (call_method): add more info to the exception
	  derived from attempts to call a value which is neither a C nor an AS
	  function.
	* server/sprite_instance.cpp (goto_frame): wait for target frame
	  even if we won't push any action. Fixes bug #21126.

2007-09-21 Chad Musick <chadmusick@msbx.net>

	* server/parser/abc_block.cpp,.h: Read AS3 blocks. (unfinished)
	* server/parser/Namespace.h: AS3 namespaces (unfinished)

2007-09-20 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (set_variable_name): create
	  the new variable if it doesn't exist in registering sprite.
	* testsuite/misc-swfc.all/edittext_test1.sc: no more failures
	  here, but I'm sure it would be easy to break gnash more.
	  Zou, good luck :)

2007-09-20 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: add an updateText method
	  intended to be called by sprite_instance when a registered
	  text variable is updated; have set_text_value forward the 
	  text change back to the sprite_instance where any 
	  variable name is registered, for proper distribution of
	  the new text to any other TextField registered with the
	  same variable.
	* server/sprite_instance.cpp (set_text_value): use the new
	  updateText to update TextField text when variable name is
	  updated.
	* testsuite/misc-swfc.all/edittext_test1.sc: more successes.

2007-09-20 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: define a private method
	  to parse the text variable into a sprite_instance and property name
	  components, to be used later to update the state of a registered
	  variable when text is updated otherwise and to unregister the
	  variable name when unloaded or when variable name changes.

2007-09-20 Chad Musick <chadmusick@msbx.net>

	* libbase/string_table.h: Doxygen documentation.

2007-09-20 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/sprite_instance.cpp: goto_frame(), revert a few changes, 
	  which I believe caused the infinite loop when executing get_frame_number_test.swf
	
2007-09-20 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/asobj/Key.cpp: use key::codeMap instead of key::code.
		
2007-09-20 Zou Lunkai <zoulunkai@gmail.com>

	* server/gnash.h: drop key::gnashKey, reorganize key::code.
	* server/event_id.h: make the constructor	to take an unsigned char type.
	* server/movie_root.cpp, server/button_character_instance.cpp,
	  server/asobj/Key.cpp: use key::codeMap instead of key::code, fix getAscii().
	* gui/gtk.cpp, gui/kde.cpp: update a few key names.
	* testsuite/misc-ming.all/key_event_testrunner.cpp: fix bogus tests about
	  Key.getAscii().	   
	
2007-09-19 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (goto_frame): fix blind jump to target
	  frame when > frame count. We still want to ensure_frame_loaded
	  instead. 
	* server/parser/movie_def_impl.{cpp,h}: mutex-protect access to named
	  frames map.

2007-09-19 Sandro Santilli <strk@keybit.net>

	* extensions/mysql/mysql_db.cpp: use init_member, not set_member, when
	  initializing symbols (should fix use in SWF6 or lower versions -
	  untested but pretty sure).

2007-09-19 Chad Musick <chadmusick@msbx.net>

	* libbase/string_table.cpp,.h: Make member functions non-static and
	  add a facility to pre-load some strings.
	* server/PropertyList.cpp array.cpp as_environment.cpp as_function.cpp
	  as_object.cpp as_object.h as_value.cpp character.cpp
	  edit_text_character.cpp impl.cpp movie_root.cpp sprite_instance.cpp
	  swf_function.cpp textformat.cpp timers.cpp: Convert string table usage
	  to enum + instance use.
	* server/asobj/AsBroadcaster.cpp ContextMenu.cpp LoadVars.cpp
	  MovieClipLoader.cpp NetStream.cpp Object.cpp Stage.cpp prophelper.h
	  xml.cpp xmlsocket.cpp: Convert string table usage to enum + instance
	* server/vm/ASHandlers.cpp ActionExec.cpp: Convert string table usage
	* server/vm/VM.cpp VM.h: Add pre-load of common property names, convert
	  string table usage, add string table member.
	* server/vm/action.cpp action.h: Remove enumeration of standard properties
	  with the special handler, use string table enumeration instead. Unifies
	  handling.
	* testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c: Success
	* testsuite/misc-ming.all/KeyTest-Runner.cpp Makefile.am
	  attachMovieTestRunner.cpp intervalTestRunner.cpp
	  key_event_test2runner.cpp key_event_test3runner.cpp
	  key_event_test5runner.cpp key_event_testrunner.cpp: Convert string table
	  usage
	* testsuite/movies.all/Makefile.am gravity_embedded-TestRunner.cpp:
	  Convert string table usage
	* testsuite/server/GetterSetterTest.cpp PropertyListTest.cpp: Convert
	  string table usage

2007-09-19 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (set_variable_name): reinitialize
	  text to default value.
	* testsuite/misc-swfc.all/edittext_test1.sc: more successes.

2007-09-19 Sandro Santilli <strk@keybit.net>

	* gui/gtk.cpp (setInterval): add a note about the fact that the 
	  current way of setting up the FPS timer is bogus. Note that the
	  problem is related to A/V syncing...

2007-09-19 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: provide a generic
	  _name getter-setter.
	* server/sprite_instance.cpp: use character's version
	  for _name and _target getter/setter.
	* server/edit_text_character.cpp: use character's
	  _name and _target getter/setter.
	* testsuite/actionscript.all/TextField.as: successes
	  on _name and _target accesses, minor failures.
	* testsuite/misc-swfc.all/edittext_test1.sc: successes
	  on _name and _target access.

2007-09-19 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add tests
	  for effects of changing _name.

2007-09-19 Zou Lunkai <zoulunkai@gmail.com>

	* server/gnash.h: more enums for extended ascii characters.

2007-09-19 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/edittext_test1.sc, Makefile.am: new testcase for 
	  TextField using swfc. Clearer then Ming based tests. TextField variable
	  still need some work.

2007-09-19 Sandro Santilli <strk@keybit.net>

	* gui/kde_glue_agg.cpp: fix initialization order warning.
	* gui/gui.{cpp,h}: draft an attempt at skipping rendering
	  when late of fps timer. It's experimental, and disabled
	  by default. Define SKIP_RENDERING_IF_LATE in gui.h to
	  try it out.

2007-09-19 Markus Gothe <nietzsche@lysator.liu.se>

	* configure.ac: Fixed typo.

2007-09-18 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: allow multiple edit_text_character
	  to be registered with a single variable name.
	* testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c:
	  success in most tests (one still fails).

2007-09-18 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (unload): don't unload again already-unloaded
	  characters. Fixes the assertion failure in
	  action_execution_order_test12.sc.

2007-09-18 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/action_execution_order_test12.sc, Makefile.am:
	  add new testcase, caught an assertion here. Disable it if it blocks your
	  work.
	
2007-09-18 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (execute_frame_tags): execute
	  init actions *after* DLIST tags. 
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
	  No more failures in this case.
	* testsuite/misc-ming.all/init_action_test.c: a single
	  failure was introduced by this comit, for known reason.
	  We decided to accept the failure and take care of it later.

2007-09-18 Sandro Santilli <strk@keybit.net>

	* server/array.{cpp,h}: Implement enumerateNonProperties().
	  Still not 100% correct but fixes youtube controls positioning
	  (bug #20469).
	* testsuite/actionscript.all/array.as: tests for enumeration
	  of array properties.

2007-09-18 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
	  Add visual traces of actions while being executed; add
	  comment about other finding.

2007-09-18 Sandro Santilli <strk@keybit.net>

	* server/swf/DoActionTag.h (doInitActionLoader): pass 'cid' value
	  to add_init_action().
	* server/parser/movie_definition.h (add_init_action): add support for
	  a 'cir' parameter, to ignore duplicated init actions for the same
	  character id.
	* server/parser/sprite_definition.h: update add_init_action signature
	* server/parser/movie_def_impl.{cpp,h}: update add_init_action
	  signature, use a std::set to keep note of character id for which
	  init actions have been added already, discarding the rest.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: more
	  successes.

2007-09-18 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
	  Add test to verify init actions have been executed
	  in the correct order.

2007-09-17 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h} (format_text): get text alignment
	  using a new private function, which checks for _autoSize settings too.
	  Fixes bug #20760.
	* server/swf/tag_loaders.cpp (define_bits_jpeg3_loader): fix compiler
	  warning (signed vs. unsigned comparison).

2007-09-17 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libbase/string_table.h: Fixed compilation for non-32 bit platforms.
	* server/parser/video_stream_def.{cpp,h}: Use CapitalCase for types.

2007-09-17 Lauri Mylläri <rez>

	* server/swf/tag_loaders.cpp: Also parse DelaySeek field for MP3 
	  in DEFINESOUND, fixes bug #21094.

2007-09-17 Sandro Santilli <strk@keybit.net>

	* server/parser/movie_definition.h: changed signature of get_playlist:
	  rename to getPlaylist, return by pointer, have the default
	  implementation return 0.
	* server/parser/BitmapMovieDefinition.{cpp,h}: don't build a dummy
	  PlayList just for implementing the get_playlist abstract method, 
	  it's not needed anymore (the default implementation does fine).
	* server/parser/movie_def_impl.{cpp,h}: use a std::map instead of a
	  std::vector to contain PlayList of each frame. This reduced memory
	  use for movies that don't have actions in *each* frame and removes
	  race conditions due to unexpected growth of frames while parsing
	  (when number of frames advertised in header doesn't match number
	  of SHOWFRAME found in the stream); (add_frame_name): don't insist
	  in _frames_loaded being less then advertised frame count.
	* server/parser/sprite_definition.{cpp,h}: use a std::map instead
	  of a std::vector for PlayList of frames. Cleanup construction
	  of dynamic sprite definitions now that we don't need to create
	  a fake PlayList only to store a dummy execute tag.
	* server/sprite_instance.cpp: update calls to getPlaylist.

2007-09-17 Zou Lunkai <zoulunkai@gmail.com>

	* server/gnash.h: another code map for proper key handling.
	
2007-09-16 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Number.as: more tests for Number()
	  returning a primitive number rather then an object. I suspect
	  most builtin functions will need to support both invocation as
	  constructor *and* simple invocation.
	* testsuite/actionscript.all/ops.as: more tests for comparison between
	  "different" nan values... :/

2007-09-16 Bastiaan Jacques <bastiaan@bjacques.org>

	* plugin/klash/klash_part.{cpp,h}: Properly add URL arguments to
	the Klash commandline. This enables Youtube playback in Konqueror.

2007-09-16 Chad Musick <chadmusick@msbx.net>

	* libbase/string_table.cpp,.h: A string table to cut down on memory
	  usage and lookup time for properties, particularly in inheritance.
	  Preparation for AS3.
	* libbase/Makefile.am: Add string_table to list of files which the
	  Makefile knows about.
	* server directory:
	*  PropertyList.cpp,.h array.cpp,.h as_environment.cpp as_function.cpp
	   as_object.cpp,.h as_value.cpp character.cpp edit_text_character.cpp,.h
	   movie_root.cpp sprite_instance.cpp,.h swf_function.cpp textformat.cpp
	   timers.cpp: Update to use string table.
	* server/asobj directory:
	   AsBroadcaster.cpp ContextMenu.cpp LoadVars.cpp MovieClipLoader.cpp
	   NetStream.cpp Object.cpp Stage.cpp prophelper.h xml.cpp xml.h
	   xmlsocket.cpp: Update to use string table.
	* server/parser/action_buffer.h: Update to use string table.
	* server/vm directory:
	   ASHandlers.cpp ActionExec.cpp action.cpp action.h: Update to use string
	   table.
	* testsuite/misc-ming.all directory:
	   KeyTest-Runner.cpp attachMovieTestRunner.cpp intervalTestRunner.cpp
	   key_event_test2runner.cpp key_event_test3runner.cpp
	   key_event_test5runner.cpp key_event_testrunner.cpp: Update to use
	   string table
	* testsuite/movies.all/gravity_embedded-TestRunner.cpp: Update to use
	  string table
	* testsuite/server/GetterSetterTest.cpp PropertyListTest.cpp: Update to
	  use string table
	* server/swf.h: More notes about AS3 operations.

2007-09-16 Zou Lunkai <zoulunkai@gmail.com>

	* server/gnash.h: add gnashCharacter code for proper key handling.
	
2007-09-15  Rob Savoye  <rob@ripple.welcomehome.org>

	* libbase/test.as: Only execute tests if the Lirc extension is
	installed. Check return codes for a clean exit.
	* libbase/lirc.cpp: Reduce debugging verbosity. Return a pointer
	with real memory behind it instead of by acident.
	* libbase/lirc.h: Add a field to contain the button name.
	* libbase/network.cpp: Don't just see if fd is set, make sure it's
	greater than zero to avoid problems!

2007-09-14  Rob Savoye  <rob@ripple.welcomehome.org>

	* extensions/lirc/test.as: Test case for Lirc extension.
	* extensions/lirc/Makefile.am: Chnage from lirc.* to lirc_ext.* to
	avoid name collisions. 
	* libbase/lirc.h, lirc.cpp: New files for lirc interface for
	remote control.
	* extensions/lirc_ext.h, lirc_ext.cpp: Renamed from lirc.*.
	* libbase/extensions.cpp: Change how extraneous directories get
	ignored.
	* Makefile.am: Add debug info for lirc.
	* backend/Makefile.am: Wrap conditionals around building the
	libraries. 
	* extensions/Makefile.am: Add Lirc extension.
	* extensions/dejagnu/dejagnu.cpp: Change debug support to log_*().
	* gui/Makefile.am: Add LIRC flags to build.
	* libbase/Makefile.am: Add lirc.cpp and lirc.h, new files for lirc
	support.
	* libbase/network.cpp, network.h: Add connectSocket() for talking
	to named pipes. 

2007-09-14 Sandro Santilli <strk@keybit.net>

	* server/DynamicShape.cpp: optimized bounds computation by the
	  drawing API.
	* testsuite/misc-ming.all/DrawingApiTest.as: add bounds tests.
	* server/shape.{cpp,h}: add path::expandBounds to compute bounds
	  of a path locally.
	* server/parser/shape_character_def.cpp (compute_bound): delegate
	  computation of path bounds to the new path method.

2007-09-14 Sandro Santilli <strk@keybit.net>

	* server/FreetypeGlyphsProvider.{cpp,h}: use USE_FREETYPE instead
	  of HAVE_FREETYPE2 ..
	* macros/freetype.m4: don't miss to add a -I to cflags; add a note
	  about the non-sense of the way we check for /usr/include.

2007-09-14 Markus Gothe <nietzsche@lysator.liu.se>

	* configure.ac: Look for broken -fvisibility-inlines-hidden.
	* macros/mtasc.m4: Added fallback path to /usr/share/ocaml/mtasc/std.

2007-09-14 Markus Gothe <nietzsche@lysator.liu.se>

	* server/asobj/BevelFilter_as.cpp, server/asobj/BitMapFilter_as.cpp,
	server/asobj/BlurFilter_as.cpp, server/asobj/ColorMatrixFilter_as.cpp,
	server/asobj/ConvolutionFilter_as.cpp,
	server/asobj/DropShadowFilter_as.cpp, server/asobj/GlowFilter_as.cpp,
	server/asobj/GradientBevelFilter_as.cpp,
	server/asobj/GradientGlowFilter_as.cpp,
	server/vm/ASHandlers.cpp, libbase/tree.hh

	Fixes for compilation with --enable-strict.

2007-09-13 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* server/parser/video_stream_def.{h,cpp}: Tie embedded video
	  frames to the swf-frame it is embedded in. The containers the
	  video frame is stored in was merged into one.

2007-09-13  Rob Savoye  <rob@ripple.welcomehome.org>

	* libbase/extension.cpp: Change alorithm for which files to ignore
	when scanning.

	* macros/lirc.m4: Search for lirc files, so we can support a
	remote control.

2007-09-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac, testsuite/misc-ming.all/Makefile.am: add conditional
	  for Ming version at least 0.4 before building get_frame test.
	* libbase/rc.cpp: set writelog off by default (bug #21037).


2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (restart): don't call construct again, to
	  avoid re-registering with the global instance list.
	* server/movie_root.h (addLiveChar): assert the character being
	  registered is not already in the list
	* server/button_character_instance.{cpp,h}: remove dead code
	  (restart_characters); (construct): don't call restart right
	  after construct.

2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/movie_root.cpp: cleanup debugging of ever growing list

2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/button_character_instance.{cpp,h}: implement unload() in an
	  attempt to properly mark as unloaded any character registered in the
	  global instance list (could happen for child sprites).
	* server/movie_root.cpp (markReachableResources): mark all characters
	  in the _liveChars. This makes Gnash more robust, but hides a problem
	  with the global instance list always growing. A proper fix would be
	  making sure that for *all* characters removed from a displaylist the
	  character::unload() is called, which marks the character as unloaded
	  and thus removes it from the global instance list. The change above
	  to button_character_instance seems not enough. I left debugging
	  output here so you can see how the list keeps growing.


2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/movie_root.{cpp,h} (restart): properly cleanup
	  action queue and instances list, reset levels so that
	  only _level0 is kept. Still not 100% correct but fixes
	  bug #21068.

2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: drop the second list only used for
	  chils advancement (_timelineChars) and associated accessors
	  (visitAllByReversePlacement).
	* server/movie_root.{cpp,h}: Add a global "advanceable" characters
	  list, used for advancement (in ::advance); provide an addLiveChar()
	  method to add characters that are willing to be advanced there.
	* server/button_character_instance.cpp (construct): register as
	  live character with the movie_root.
	* server/video_stream_instance.{cpp,h}: add a ::construct() method
	  to properly register as live character with the movie_root
	* server/sprite_instance.cpp (advance_sprite): forget about advancing
	  childs, movie_root will take care of that; (construct): register
	  self as a live character with the movie_root.
	* testsuite/misc-ming.all/action_execution_order_test11.c: no more
	  expected failures here.

2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: drop obsoleted oldDisplayList.

2007-09-13 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_create_text_field):
	  fix log_aserror calls (too few, too many args and
	  log_error to log_aserror).

2007-09-13 Sandro Santilli <strk@keybit.net>

	* gui/Makefile.am, gui/NullGui.cpp, libbase/Makefile.am,
	  libbase/triangulate_impl.h, libbase/tu_timer.cpp,
	  libbase/tu_timer.h, server/timers.h, server/asobj/NetStream.h,
	  server/asobj/NetStreamFfmpeg.cpp, server/vm/VM.cpp,
	  utilities/processor.cpp:
	  Revert Markus changes, as they introduce too many obvious failures.
	  Please avoid commits triggering failures on 'make check' and do
	  your best to have 'make check' run as many tests as possible.

2007-09-13 Markus Gothe <nietzsche@lysator.liu.se>

	* gui/NullGui.cpp libbase/Makefile.am libbase/triangulate_impl.h 
	server/timers.h server/asobj/NetStream.h 
	server/asobj/NetStreamFfmpeg.cpp 
	server/vm/VM.cpp utilities/processor.cpp
       
	* Removed Files:
        libbase/tu_timer.cpp libbase/tu_timer.h

	Overhauled tu_timer with the se of std::clock and boost/timer.hpp.
	Might, break things, but it better get fixed this way.

2007-09-12 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Inheritance.as: more tests for 'super'.

2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Use the average of X and Y scaling
	to determine the proper line thickness.

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (sprite_create_text_field): check for
	  negative dimensions. Fixes bug #21021.
	* testsuite/actionscript.all/TextField.as: Add test for negative
	  dimensions given to createTextField().

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/asobj/AsBroadcaster.cpp: add support for passing arguments
	  for broadcasted message handlers.
	* testsuite/actionscript.all/AsBroadcaster.as: add tests for arguments
	  passed to broadcasted messages.

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/as_function.{cpp,h}: make 'prototype' a proper property,
	  change getPrototype() to return by intrusive_ptr.
	* server/sprite_instance.cpp: update call to getPrototype().

2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Make sure we don't try to use
	a line width of 0: normalize the width.

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (parse_path): revert zou change as it
	  breaks callFunction_testrunner (assertion failure).

2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Implement getPixel().

2007-09-12 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Inheritance.as: more tests for double
	  inheritance.

2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp, gui/gui.{cpp,h},server/movie_root{cpp,h}
	* server/event_id.h, server/asobj/Key.{cpp,h}
	* server/edit_text_character.cpp
	* testsuite/MovieTester.cpp: Revert changes because
	  it causes too many problems. There is a better way.	  

2007-09-12 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Inheritance.as: few more tests (maybe
	  redundant) for constructor and __constructor__

2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Add a debugging function
	called check_error(), enabled by toggling the DEBUG_OPENGL
	macro. Don't bother setting variables to their defaults.

2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* testsuite/MovieTester{cpp,h}: remove utf8 from keypress,
	  pass default value.
	* gui/kde.cpp: Add default value to utf8.

2007-09-12 Zou Lunkai <zoulunkai@gmail.com>

	* server/as_environment.cpp: parse_path() cleanups.
	
2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: pass unicode of key event when notifying gui.
	* gui/gui.{cpp,h}: pass unicode to movie_root.
	* server/movie_root{cpp,h}: notify key listeners of unicode.
	* server/event_id.h: add m_unicode.
	* server/asobj/Key.{cpp,h}: fix getAscii().
	* server/edit_text_character.cpp: read unicode, not swf keycode.
	* testsuite/MovieTester{cpp,h}: update notify_key_event test.

2007-09-12 Chad Musick <chadmusick@msbx.net>

	* server/as_value.cpp: Move test to silence compiler warnings.

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (construct): properly initialize
	  the '__constructor__' and 'constructor' members when a class
	  was registered with our definition.
	* testsuite/misc-ming.all/registerClassTest2.c: no more failures here.

2007-09-12 Chad Musick <chadmusick@msbx.net>

	* server/as_value.cpp: Make sure that exceptions don't
	  cause asserts, even if they escape into the wild.
	  (This escape is an error, but perhaps it should not
	  be fatal.)

2007-09-12 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp: cleanup variables initialization
	  order.
	* testsuite/actionscript.all/MovieClip.as: minor tests for
	  removeMovieClip

2007-09-12 Zou Lunkai <zoulunkai@gmail.com>

	* server/vm/ASHandlers.cpp: drop parse_path for ActionCallFunction, it's
	  unnecessary and has case sensitiviness issue.
	* testsuite/misc-ming.all/callFunction_test.c: two more passes.
	
2007-09-12 Chad Musick <chadmusick@msbx.net>

	* server/as_value.cpp,h: Add exception types to as_value.
	* server/vm/ASHandlers.cpp: Implement try and throw
	* server/vm/ActionExec.cpp,h: Support for try and throw
	* testsuite/misc-mtasc.all/exception.as: Exceptions now work.

2007-09-11 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h} (copyProperties): don't copy __proto__.

2007-09-11 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/AsBroadcaster.as: a couple more tests
	  for return from broadcastMessage.
	* server/asobj/AsBroadcaster.cpp: fix return from broadcastMessage.
	* testsuite/swfdec/PASSING: asbroadcaster-broadcastMessage-retval-*.swf 
	  all pass now.
	* server/as_value.cpp (to_debug_string): fix debug print for movieclip
	  values.

2007-09-11 Sandro Santilli <strk@keybit.net>

	* server/array.{cpp,h}: add removeFirst and visitAll methods.
	* server/as_object.{cpp,h}: add getMember and callMethod memebers
	  for ActionScript-like coding.
	* server/asobj/: Makefile.am, Global.cpp, AsBroadcaster.{cpp,h}:
	  First draft at AsBroadcaster. NOTE: this is not 100% compatible
	  but contains some special code to handle corner cases for compatbility
	  sake (mostly to avoid breaking swfdec testcases). The normal case
	  will still be faster then the average one.

2007-09-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/gnash.h: add more keycodes.
	* gui/gtk.cpp: pass more keystrokes.
	* server/edit_text_character.cpp: do not add character to string
	  when shift pressed.

2007-09-11 Sandro Santilli <strk@keybit.net>

	* testsuite/swfdec/PASSING: super-this-5.swf passes (probably since
	  zou commit).
	* testsuite/analyse-results.sh: fix print of unexpected successes.

2007-09-11 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: Disable polygon smoothing for now as
	it has some unwanted side effects.

2007-09-11 Bastiaan Jacques <bastiaan@bjacques.org>

	* backend/render_handler_ogl.cpp: GL_MODELVIEW is the default matrix
	mode, so don't bother setting it at every opportunity. Rather, reset it
	to the standard value after it is changed to something else. Round
	lines by drawing a round point on the end of every line (fixes
	#18014). Enable pologon smoothing (anti-aliasing).

2007-09-11 Zou Lunkai <zoulunkai@gmail.com>

	* server/asobj/Global.cpp: don't initialize Function class for SWF < 6.
	* testsuite/actionscript.all/Inheritance.as, 
	  testsuite/actionscript.all/Function.as: disable a few confusing
	  and duplicated(but correct) tests for SWF5. more passes.
	* testsuite/actionscript.all/Number.as, 
	  testsuite/actionscript.all/toString_valueOf.as: more passes.
	  
2007-09-10  Rob Savoye  <rob@ripple.welcomehome.org>

	* macros/curl.m4: sed any "-L/usr/lib" off the output of
	curl-config. This breaks some 64 bit systems.
	* macros/kde.m4: Do an ls instead of a test to find kde libraries.
	* macros/pango.m4, gtk2.m4, gnashpkgtool.m4, ffmpeg.m4: Use
	--libs-only-l with pkg-config as sometimes the path is wrong for
	64bit systems.

2007-09-10 Sandro Santilli <strk@keybit.net>

	* server/parser/morph2_character_def.cpp (read):
	  Set shapes bounds *after* calling ::read() on them.
	  Fixes bug #21020.

2007-09-10 Sandro Santilli <strk@keybit.net>

	* server/bitmap_info.h: drop OGL-specific members.
	* libbase/image.{cpp,h}: cleanup the image_base interface:
	  - make more members private to reduce chaces of buffer size
	    and associated size-describing members mismatch (still more
	    to do)
	  - add more methods from statics which do not have access
	    to now-private members 
	* backend/render_handler_ogl.cpp: add OGL-specific members
	  to bitmap_info_ogl, update uses of image_base.
	* backend/render_handler_agg.cpp, libbase/embedVideoDecoderFfmpeg.cpp,
	  libbase/embedVideoDecoderGst.cpp, libbase/image_filters.cpp,
	  server/FreetypeGlyphsProvider.cpp, fill_style.cpp,
	  server/fontlib.{cpp,h}, server/parser/BitmapMovieDefinition.cpp,
	  server/swf/tag_loaders.cpp, server/asobj/NetStream.cpp,
	  server/asobj/NetStreamFfmpeg.cpp, backend/render_handler_cairo.cpp:
	  Update uses of image_base

2007-09-10 Sandro Santilli <strk@keybit.net>

	* server/asobj/NetStreamGst.cpp (GstInstallPluginsResultCb): comment
	  out unused parameter and garbage message.
	* server/parser/video_stream_def.cpp (dtor): delete [] since we
	  allocated with new [].
	* libbase/Makefile.am: drop image_filters.cpp (seems unused)
	* server/dlist.cpp (reset): remove unused variable.
	
2007-09-10 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/Makefile.am: enable tow old testcases.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: one more
	  test about init actions.
	  
2007-09-10 Chad Musick <chadmusick@msbx.net>

	* server/fill_style.cpp: Correct handling of morph fills.
	* server/styles.cpp: Correct handling of morph colors.
	* server/parser/morph2_character_def.cpp: Remove @@hack
	  line, and fix underlying problem instead. Should fix
	  bug #19085. Morph and Morph2 shapes now work correctly.
	* server/parser/shape_character_def.cpp: Be sure to read
	  on alignment where needed.

2007-09-08 Sandro Santilli <strk@keybit.net>

	* server/parser/video_stream_def.h: document class members,
	  add some notes or todo items
	* server/parser/video_stream_def.cpp (read): add a TODO item
	  as I think we're misreading the VIDEOFRAME tag.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/video_stream_instance.h: keep definition by 
	  intrusive_ptr (just for consistency with other
	  character instances)
	* server/parser/video_stream_def.cpp (get_frame_data):
	  always set output parameters to 0 if requested frame
	  number is not available.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: change signature of .reset() to
	  take a sprite_instance for calling set_invalidated() when
	  needed.
	* server/sprite_instance.cpp (restoreDisplayList): update
	  call to DisplayList::reset() - this optimizes loop-backs
	  and fixes a failure introduced by previous commit
	  (it's nice to see that performance issues are also tested
	  by our testsuite - we'd just need some more)

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (restoreDisplayList): don't use
	  a copy of the display_list to optimize the call to set_invalidated.
	  Removing characters from the copy would shift unloaded characters
	  to a different depth, which in turn would fail an assertion
	  (which is *needed* or set_invalidated would not include invalidated
	  bounds of just-unloaded characters).
	  BTW, this suggests me we need a lot of tests for inv.bounds. as the
	  latest changes for depth swap on unload did likely break a few
	  cases.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: disable the too many debugging
	  prints left over from the big action order commit.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* testsuite/analyse-results.sh: add detailed report
	  of unexpected successes and failures.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Makefile.am,
	  testsuite/misc-ming.all/Makefile.am,
	  testsuite/misc-mtasc.all/Makefile.am,
	  testsuite/misc-swfc.all/Makefile.am,
	  testsuite/misc-swfmill.all/Makefile.am,
	  testsuite/swfdec/Makefile.am:
	  Don't have 'make check' fail here, rely
	  on analyzer to tell if something went unexpected.
	  This is to help with intermittent failures forcing
	  running the expensinve check over and over again.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* testsuite/analyse-results.sh: exit with a failure if any real
	  failure or unexpected success is found in the logs. Cleanup
	  presentation code and output (the latter to now which subdirs have
	  failures or unexpected successes).

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (output operator): don't compare iterators from
	  different sequences !
	* server/movie_instance.cpp (advance): don't invoke ONLOAD event
	  handler, the event will be queued by ::construct instead
	* server/movie_root.cpp (setRootMovie): process actions
	  queued by effect of root movie construction.
	* server/sprite_instance.{cpp,h}:
	  - Drop do_action(), m_action_list and m_on_event_load_called members.
	  - Make ::construct virtual so it can be overridden by movie_instance.
	  - Have add_action_buffer queue globally or execute actions immediately depending
	    on a new (misnamed) _callingFrameActions flag (I want to cleanup this part next).
	    Basically, all actions are queued to the global list, with two
	    exceptions:  init actions and callFrame actions.
	  - Expose a new public queueAction(action_buf&) method, currenly
	    unused but possibly for use in a cleanup of the preceding queue-or-execute
	    actions handling.
	  - Move registration as core broadcaster listener code into its own
	    function (registerAsListener).
	  - Refactor restoreDisplayList() to also execute *action* tags of
	    target frame, so to get order right.
	  - Far cleaner advance_sprite() implementation.
	* testsuite/MovieTester.cpp (ctor): properly construct root movie,
	  and render after construction.
	* testsuite/swfdec/swfdec_gnash_tester: advance 10 times as intended
	  by swfdec testsuite, not 11 as we needed to do due to gnash bugs.
	* testsuite/misc-ming.all/: action_execution_order_extend_test.c,
	  action_execution_order_test2.c, action_execution_order_test4.c,
	  action_execution_order_test5.c, action_execution_order_test7.c,
	  action_execution_order_test9.c, action_execution_order_test10.sc:
	  SUCCESSES !
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc: SUCCESSES !
	* testsuite/swfdec/PASSING: SUCCESSES !

2007-09-07 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/: level5.as, level99.as: check
	  that at time of first-frame actions execution for loaded movies,
	  _currentframe is set to 1.
	* server/sprite_instance.cpp (loadMovie): don't use
	  movie_root::setRootMovie for loading external movies,
	  as that method is meant for kick-start only.
	* server/vm/action.cpp: remove dead code.

2007-09-07 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/action_execution_order_test10.sc:
	  check that _currentframe is 1 when actions in first frame of
	  _root are executed
	* server/movie_instance.{cpp,h}: add overridden ::construct
	  method, taking care of ensuring frame1 is completely loaded
	  and calling the superclass version of it. 
	* server/movie_root.cpp (setLevel): call ::construct on newly
	  added levels (including level0).

2007-09-07 Sandro Santilli <strk@keybit.net>

	* server/vm/VM.{cpp,h}: change the VM::init() functionality
	  to NOT instantiate the movie definition. This is propedeutic
	  for a cleanup in movie_instance construction, which will be
	  performed by movie_root::setLevel in next patch.
	* gui/Player.cpp, testsuite/MovieTester.cpp,
	  testsuite/server/DisplayListTest.cpp,
	  testsuite/server/GetterSetterTest.cpp,
	  testsuite/server/PropertyListTest.cpp,
	  utilities/processor.cpp:
	  Update VM & stage (movie_root) initialization calls
	  to take into account VM::init() semantic change.

2007-09-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/action_execution_order_test4.c: more
	  explicit test showing that defining onLoad for _root in first
	  frame works, while doesn't work for child sprites.
	* server/sprite_instance.cpp (add_display_object): only syntetize 
	  and instance name when actually placing a new character (simplifies
	  the code and fixes a case related to ratio compatibility).

2007-09-06 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* libbase/FLVParser.cpp: Made it more robust by accepting empty
	   tags, fixing bug #20889.
	* server/video_stream_instance.cpp: Check for data being NULL.
	* server/asobj/NetStreamFfmpeg.cpp: A few changes to make it
	  work better with only video or audio - not complete yet.

2007-09-06 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/: Dejagnu.sc, check.sc:
	  Also print expression being tested with {x}check_equals 
	* testsuite/misc-ming.all/action_execution_order_test1.c: Add tests
	  showing that onClipLoad event can reference self and characters placed 
	  either before or after the character carrying that event.

2007-09-06 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/action_execution_order_test3.c: Reorganize and recomment
	  the source file, please make sure you know the tags order of produced swf file 
	  after your update.
	  
2007-09-05 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (removeUnloaded): also remove from _timelineChars.

2007-09-05 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/action_execution_order_test3.c: attempt
	  to test REMOVEOBJECT before DOACTION (failed though, as Ming seems
	  to keep placing REMOVEOBJECT tags adjacent instead).
	  This test is reported as an evidence of behaviour 2 in
	  ActionsExecutionOrder#Verified_behaviour wiki page, so we either
	  need another or that behaviour is not verified !!

2007-09-05 Ivor Blockley <meteoryte@yahoo.com.au>

	* server/vm/action.{cpp,h}: add htmlText property to 
	as_standard_member ENUM
	* server/edit_text_character.{cpp,h}: add html property and cleanup
	handling of htmlText (note: still just strips tags at the moment).
	* testsuite/actionscript.all/TextField.as: 5 new passes, 1 new failure

2007-09-05 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: also maintain a list of characters by
	  placement and provide a visitByPlacement for visiting them.
	* server/sprite_instance.cpp: (advance_sprite): visit DisplayList
	  in reverse-placement order when advancing old and newly added
	  characters.
	* testsuite/misc-ming.all/action_execution_order_test2.c: one success
	  in action execution order.

2007-09-05 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* backend/sound_handler_{sdl,gst}.cpp: Remove primitive
	  audio syncing code. Fixes bug #20866 and #20851, but reopens
	  #20681.

2007-09-05 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: add ::unload method for taking
	  care of unloads triggered by parent unload.
	* server/sprite_instance.cpp (unload): use DisplayList::unload
	* testsuite/misc-swfc.all/movieclip_destruction_test4.sc: fix
	  destruction of childs w/out onUnload event handler defined.

2007-09-05 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: more tests about 
	  initactions, gnash fails by not respecting the actions order.
	* testsuite/misc-swfc.all/movieclip_destruction_test4.sc: more tests for 
	  catching unloaded character bug, got a xcheck.
	
2007-09-05 Markus Gothe <nietzsche@lysator.liu.se>

	* server/asobj/MovieClipLoader.cpp: iterator -> const_iterator.
	* libbase/timer.cpp: Added commentary.
	* backend/sound_handler_sdl.cpp: Fixed conflict with namespaces from
	 booost/cstdint.hpp.
	* utilities/*.cpp: #ifdef ENABLE_NLS.
	* testsuit/libamf.all/*.cpp: Fixed GNUisms.

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: always check if we've been unloaded
	  by effect of a call to on_event(). Fixes bug #20974.

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/parser/sprite_definition.cpp (read): simplify handling of
	  malformed sprite definition (last SHOWFRAME not followed by END).
	  Fixes high CPU use and inresponsiveness while playing
	  gnashcrash.swf.

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/character.{cpp,h}: add hasEventHandler() and queueEvent()
	  methods. Implement ::unload by queuing the UNLOAD event (not its
	  handlers
	* server/vm/ExecutableCode.h: Add QueuedEvent "executable code", for
	  queuing events rather then handlers.

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.h: make execute_action() public, for use
	  by DoActionTag (for init actions).
	* server/swf/DoActionTag.h: execute init actions by directly
	  execute them (opposed to use add_action_buffer which queues them)
	* server/sprite_instance.cpp (execute_frame_tags): simplify execution
	  of init tag (simply execute them rather then have them queue and
	  then execute the queue).

2007-09-04 Sandro Santilli <strk@keybit.net>

	* NEWS: updated by copying from 0.8.1
	* server/edit_text_character.cpp: support case-insensitive
	  htmlText property (for SWF6).
	* testsuite/actionscript.all/TextField.as: fix expected results
	  (more successes, one failure which only worked by luck before).
	* testsuite/analyse-results.sh: print also unexpected successes.

2007-09-04 Asger Ottar Alstrup <asger@area9.dk>

	* server/edit_text_character.cpp: add minimal support for htmlText.

2007-09-04 Chad Musick <chadmusick@msbx.net>

	* server/fill_style.cpp,.h: Let fill style know how to read
	  morph (2) type styles as well, to avoid duplicating lots
	  of code.
	* server/styles.cpp,.h: Fill line style know how to read
	  morph2 tags for the same reason.
	* server/impl.cpp: Change MORPHSHAPE2 loader to activate it.
	* server/parser/morph2_character_def.cpp: Parse MorphShape2
	  tags as well as MorphShape.
	* server/swf/tag_loaders.cpp: Recognize MorphShape2 tags.

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.{cpp,h}: add an _abortOnUnload flag
	  for premature abortion of action buffers being executed,
	  always false for functions and true by default for
	  global code (overridable by a third optional constructor
	  argument). Check target for being unloaded (if _abortOnUnload)
	  at opcode-level.
	* server/vm/ExecutableCode.h (EventCode): set _abortOnUnload
	  to false when constructing ActionExec for event code.
	* testsuite/misc-swfc.all/: movieclip_destruction_test1.sc,
	  movieclip_destruction_test3.sc: successes with premature
	  abortion of action buffers.

2007-09-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac: make kde development package advice
	  accurate (see bug #20908).

2007-09-04 Sandro Santilli <strk@keybit.net>

	* server/dlist.cpp (reset): don't ::unload() again
	  on already unloaded characters. They might still be
	  in the list (and not in the removed zone) due to their
	  having an onUnload handler to be invoked when their parent
	  was unloaded. Fixes last assertion failure in bug #20949
	  (copter.swf)

2007-09-04 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/movieclip_destruction_test{1,3,4}.sc: more tests.
	* testsuite/misc-swfc.all/Makefile.am: enable new tests.
	
2007-09-04 Chad Musick <chadmusick@msbx.net>

	* backend/render_handler_tri.cpp: Enabling focal gradient fills on
	  renderers other than AGG.
	  	  
2007-09-04 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix some bogus tests
	  caused by bogus compiler convertion, and a few more tests, all passed.
	  
2007-09-03 Sandro Santilli <strk@keybit.net>

	* server/character.cpp (unload): call queueEventHandler before setting
	  _unloaded to true.
	* server/dlist.cpp (wherever characters are unloaded): call unload() after
	  removing the character.

2007-09-04 Chad Musick <chadmusick@msbx.net>

	* server/font.cpp,.h: Add is_subpixel_font flag for DefineFont3 tag.
	* server/text.cpp: Size SWF8, SWF9 fonts correctly -- they use subpixel
	  shapes, so they need to be scaled when displayed.

2007-09-03 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (advance_sprite): don't use
	  DisplayList::advance against DisplayList copies, for which
	  invariant is not maintained.

2007-09-03 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* render_handler_agg_style.h: focal gradients now render correctly

2007-09-03 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (advance_sprite): don't call
	  removeUnloaded on DisplayList copies (their ::advance will skip
	  unloaded elements, anyway).
	* server/as_value.cpp (to_sprite): make the dangling reference a
	  debugging info, not an error.

2007-09-03 Zou Lunkai <zoulunkai@gmail.com>

	* server/dlist.cpp: don't abort for unloaded characters in DisplayList::advance().
	  fixd a case in bug #20076.
	  
2007-09-03 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* render_handler_agg_style.h: Some fixes for focal gradients

2007-09-03 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (unload): don't forget to call
	  the base class version of the method (properly setting _unload
	  flag).

2007-09-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* doc/C/usermanual/usage/gnashrc.xml: Warn in docs about including
	  protocols in black- and whitelists.

2007-09-03 Sandro Santilli <strk@keybit.net>

	* server/character.h: Add depthInRemovedZone() methods.
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc:
	  Additional tests, and a typo fix.

2007-09-03 Chad Musick <chadmusick@msbx.net>

	* backend/render_handler_agg_style.h Correct(maybe) the placement of the
	  focal point for focal gradient fills.
	* server/fill_style.cpp Read focal gradient fills in the right place
	  (after gradient records, not before), also added focal gradients to
	  known bitmap transforms.

2007-09-03 Markus Gothe <nietzsche@lysator.liu.se> 

	* macros/boost.m4: Commented out bogus check and improved the
	  checking of BOOST_CFLAGS.
	* libbase/tu_types.h: Use boost/cstdint.hpp instead of inttypes.h
	* server/vm/action.h: __SGI_LIBC_USING_FROM_STD(va_list)
	* gui/gnash.cpp: setlocale() IFF #ENABLE_NLS.

2007-09-03 Chad Musick <chadmusick@msbx.net>

	* server/fill_style.h,.cpp -- Add recording of focal point for focal
	  gradient fill.
	* backend/render_handler_agg.cpp, backend/render_handler_agg_style.h
	  Adding gradient focal fill. I'm not sure if I've done this correctly,
	  but it didn't break anything.

2007-09-02 Chad Musick <chadmusick@msbx.net>

	* server/fill_style.cpp -- Update the allow focal gradient fill style,
	  and to accomodate some format changes for SWF8+ tags.  Focal
	  gradients are not implemented yet -- I don't yet know how to do this.
	* server/impl.cpp -- Update DefineShape4 loader function from fixme_loader
	  to shape loader.
	* server/styles.h -- Change signature of read function to include the
	  movie definition since it may be part of a fill style, which needs this.
	* server/styles.cpp -- Change read function to read new line styles
	  allowed in newer SWF files.
	* server/parser/shape_character_def.cpp -- Change loader to know how
	  to read a DefineShape4 tag.
	* server/swf/tag_loaders.cpp -- Let the shape_loader be able to load
	  a DefineShape4 tag.

2007-09-02 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc: one more test.
	* testsuite/misc-swfc.all/action_execution_order_test10.sc: another testcase
	  about actions order. If any questions, please add to the wiki.
	* testsuite/misc-swfc.all/Makefile.am: enable testcase.
	
2007-09-01 Sandro Santilli <strk@keybit.net>

	* server/as_object.{h,cpp}: handle __proto__ has a normal property.
	* server/sprite_instance.cpp (replace_display_object): log an error
	  if the character to be replaced is not found.
	* server/dlist.cpp (replace_character): don't restart the character
	  being added (fixes a problem with the ::restart function itself, in
	  that it also cleans up all properties, which now include the
	  __proto__ member).
	* testsuite/actionscript.all/toString_valueOf.as: more successes.
	* testsuite/actionscript.all/Object.as: more successes.

2007-09-01 Markus Gothe <nietzsche@lysator.liu.se> 

	* macros/boost.m4: push/pop CXXFLAGS/CPPFLAGS.
	* libbase/utility.h: Fixed a C++98/C99 incompt. error
	* libbase/utility.cpp: Use boost/cstdint.hpp instead of stdint.h.
	* libbase/zlib_adapter.cpp: Added 'using namespace gnash;'

2007-09-01 Sandro Santilli <strk@keybit.net>

	* server/asobj/Object.cpp (attachObjectInterface): remove
	  useless call to set_member_flags (init_member does it).
	* server/as_object.{cpp,h}: removed dead code (clear)

2007-09-01 Sandro Santilli <strk@keybit.net>

	* server/swf_function.cpp (ctor): make sure user-defined
	  function's initial prototype inherits from Object.
	* server/asobj/Object.cpp (getObjectInterface): really
	  end the inheritance chain (ie: don't override __proto__).
	* testsuite/actionscript.all/Inheritance.as: a couple tests
	  added.
	* testsuite/actionscript.all/Object.as: more successes, and 
	  an additional (still failing due to non-proper __proto__ member)
	  test.
	* testsuite/actionscript.all/toString_valueOf.as: one more success.

2007-09-01 Ivor Blockley <meteoryte@yahoo.com.au>

	* server/array.cpp: make to_number calls environment-aware.
	* testsuite/actionscript.all/array.as: success in invalid array.sort()
	  calls

2007-09-01 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: when unloaded character's unload() method
	  returns true (character or any of its childs has onUnload methods to
	  be run) don't really remove it from the list, but just shift it
	  down to the "removed" zone. Advance and display only non-removed
	  characters (depth-zone based for now, possibly too weak).
	  Add lots of paranoid invariant testing (not enough, missing the
	  one for no unloaded characters out of "removed" depth zone).
	* server/character.{cpp,h}: more info about removedDepthOffset,
	  assertion preveing double unload of a character (this can be 
	  probably easily broken by a focused testcase using removeMovieClip
	  on a removed but still-reachable character).
	* server/movie_root.{cpp,h}: added cleanupDisplayList() method, and
	  call it at the end of actions execution to properly cleanup removed
	  but still-reachable characters.
	* server/sprite_instance.{cpp,h}: implement a cleanupDisplayList, to
	  be called by movie_root, make sure to not include unloaded
	  characters when visiting the DisplayList for bounds extractions and
	  similar.
	* testsuite/actionscript.all/MovieClip.as: soft-references successes
	* testsuite/misc-ming.all/: loop_test7.c, loop_test8.c:
	  keep-alive-for-onUnload successes
	* testsuite/misc-ming.all/unload_movieclip_test1.c: successes
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc: successes
	* testsuite/swfdec/PASSING: remove-depths-*.swf successes

2007-08-31 Sandro Santilli <strk@keybit.net>

	* server/asobj/gen-asclass.sh: add the getObjectInterface call.
	  (btw, gen-asclass.pl is being left behind).

2007-08-31 Sandro Santilli <strk@keybit.net>

	* server/as_object.{cpp,h}: changed get_prototype to always return
	  the actual prototype (rather then returning the Object prototype
	  if unset).
	* server/: array.cpp, as_function.cpp, edit_text_character.cpp,
	  sprite_instance.cpp, video_stream_instance.cpp:
	  Initialize AS class interfaces (prototype) as being subclasses of
	  the Object class.
	* server/asobj/: Boolean.cpp, Camera.cpp, Color.cpp,
	  ContextMenu.cpp, CustomActions.cpp, Date.cpp, Error.cpp, Key.cpp,
	  LoadVars.cpp, Microphone.cpp, Mouse.cpp, MovieClipLoader.cpp,
	  NetConnection.cpp, NetStream.cpp, Number.cpp, Object.cpp,
	  Selection.cpp, SharedObject.cpp, Sound.cpp, Stage.cpp, System.cpp,
	  TextSnapshot.cpp, string.cpp, xmlnode.cpp, xmlsocket.cpp
	  Initialize AS class interfaces (prototype) as being subclasses of
	  the Object class.
	* testsuite/actionscript.all/Global.as: more successes.
	* testsuite/actionscript.all/Function.as: one more test for
	  Function.prototype.__proto__
	* testsuite/actionscript.all/MovieClip.as: more tests for
	  MovieClip.prototype.__proto__
	* testsuite/actionscript.all/TextField.as: more tests for
	  TextField.prototype.__proto__
	* testsuite/actionscript.all/Video.as: more tests for
	  Video.prototype.__proto__
	* testsuite/actionscript.all/array.as: more tests for
	  Array.prototype.__proto__
	* testsuite/swfdec/PASSING: successes from latest swfdec
	  testsuite.

2007-08-31 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/Object.as: add test for
	  Object.prototype.__proto__ expected to be undefined (bad bug
	  in Gnash!).
	* server/array.cpp (array_length): handle attempts to set a negative
	  length as if length=0 was set, and log an AS error.
	  Still not correct, but saves a memory fill with swfdec testsuite.
	* testsuite/actionscript.all/array.as: add test for setting a negative
	  length.

2007-08-31 Sandro Santilli <strk@keybit.net>

	* server/character.cpp (unload): assert the character wasn't already
	  unloaded.
	* macros/boost.m4: don't trash user-defined CXXFLAGS, and don't
	  provide one if not user-specified initially.
	* testsuite/misc-swfc.all/check.sc: ops, last totals() define
	  was buggy, this one is good.

2007-08-31 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp: removed more dead code.
	* server/dlist.cpp (swapDeptsh): don't swap to depths in the
	  deleted characters zone.
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc:
	  less failures, few more tests.
	* testsuite/misc-swfc.all/Dejagnu.sc: include file:line info
	  in xpass too...
	* testsuite/misc-swfc.all/check.sc: define totals().

2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: few more tests.
	
2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/movieclip_destruction_test2.sc: testcase about
	  movieclip destruction and soft references, more failures.
	* testsuite/misc-swfc.all/Makefile.am: enable testcase.
	  
2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
	
	* libbase/image.cpp: don't ommit the default parameter, should fix 
	  the building, please check.
	
2007-08-30 Sandro Santilli <strk@keybit.net>

	* server/dlist.{cpp,h}: drop unused methods and optional args.

2007-08-30 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.{cpp,h}: cleanups: 
	  drop resetDisplayList, _frame0 and replace_if_depth_is_occupied
	  parameter of add_display_object.
	* server/swf/PlaceObject2Tag.cpp: update call to add_display_object

2007-08-30 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/Makefile.am: don't try to build
	  DefineEditTextVariableNameTest2-Runner from an non-existent .c
	  file (fixes 'make dist').
	* server/: character.{cpp,h}, edit_text_character.{cpp,h},
	  sprite_instance.{cpp,h}: change signature of character::unload()
	  to return a boolean value stating wheter any onUnload event was
	  queued due to removal.

2007-08-30 Sandro Santilli <strk@keybit.net>

	* server/character.h: add const for removed clips depth offset.
	* testsuite/actionscript.all/MovieClip.as: test for depth shift when
	  onUnload method is defined and a clip is removed.
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: expect
	  gnash failures.
	* testsuite/actionscript.all/: Makefile.am, AsBroadcaster.as:
	  new test for AsBroadcaster.

2007-08-30 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/movieclip_destruction_test1.sc: testcase about
	  movieclip destruction, also action execution order related.
	* testsuite/misc-swfc.all/Makefile.am: enable testcase.
	  
2007-08-30 Sandro Santilli <strk@keybit.net>

	* server/array.h: document the push method, use some typedefs for
	  semplicity (iterators).
	* server/vm/fn_call.h: add string-returning dump_args().

2007-08-30 Markus Gothe <nietzsche@lysator.liu.se>

	* configure.ac, libbase/utility.h, server/asobj/Date.cpp,
	backend/render_handler_agg.cpp: Unified trunc() and added
	checking.
	* configure.ac, macros/libexe.m4, macros/kde.m4: 
	keep bourne-sh, /bin/sh, happy.
	* macros/boost.m4: Fixed issue with lib-checking.

2007-08-29 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/: Key.as, Mouse.as, Selection.as,
	  Stage.as, TextField.as: check elements supposedly created
	  by implicit call to ASBroadcaster.initialize().
	  See bug #20832.
	  NOTE: for TextField.as also fixed a wrong expected result for
	  targets SWF8+

2007-08-29 Sandro Santilli <strk@keybit.net>

	* testsuite/MovieTester.cpp (initTestingRenderers): add ARGB32 and
	  ABGR32 renderers.

2007-08-29 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* configure.ac: added pixel formats ARGB32 and ABGR32; allow "all" value for
	  --with-pixelformat
	* backend/render_handler_agg.cpp: implement the two new pixel formats and
	  check for the host endianess; some initial changes in AGG cache class which
          currently is not used, however
	* backend/render_handler_agg.h, gui/fb.cpp: updated comments
	
2007-08-29 Sandro Santilli <strk@keybit.net>

	* server/as_environment.cpp (get_variable): more verbosity in
	  debugging messages.

2007-08-29 Sandro Santilli <strk@keybit.net>

	* server/as_value.cpp (to_sprite): use original target, not current
	  one, for dereferencing danglign MOVIECLIP refs; add TODO item about
	  the onUnload problem.
	* server/sprite_instance.{h,cpp}: add a getOrigTarget() to return original
	  target of a sprite (the target it got when first constructed, immune
	  from _name changes).
	* testsuite/misc-swfc.all/soft_reference_test1.sc: xcheck => check

2007-08-29 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-swfc.all/soft_reference_test1.sc: add some
	  comments as to why Gnash fails.

2007-08-29 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-swfc.all/soft_reference_test1.sc: new focused
	  testcase about soft reference, still got an xcheck.
	* testsuite/misc-swfc.all/Makefile.am: enable testcase.
	  
2007-08-29 Chad Musick <chadmusick@msbx.net>

	* server/asobj/BlurFilter_as.cpp,.h
	* server/asobj/ColorMatrixFilter_as.cpp,.h
	* server/asobj/ConvolutionFilter_as.cpp,.h
	* server/asobj/DropShadowFilter_as.cpp,.h
	* server/asobj/GlowFilter_as.cpp,.h
	* server/asobj/GradientBevelFilter_as.cpp,.h
	* server/asobj/GradientGlowFilter_as.cpp,.h
	* server/asobj/BevelFilter_as.cpp,.h
	* server/asobj/BitmapFilter_as.cpp,.h
	  Change to use multiple inheritance for adaptation
	* server/BevelFilter.h,.cpp
	* server/BlurFilter.h,.cpp
	* server/ColorMatrixFilter.h,.cpp
	* server/ConvolutionFilter.h,.cpp
	* server/DropShadowFilter.h,.cpp
	* server/GlowFilter.h,.cpp
	* server/GradientBevelFilter.h,.cpp
	* server/GradientGlowFilter.h,.cpp
	  Changing to use multiple inheritance for adaptation
	* server/asobj/prophelper.h Update for using multiple inheritance
	* server/parser/filter_factory.cpp
	  Change to use correct type of operator for array pushes.

2007-08-29 Sandro Santilli <strk@keybit.net>

	* libbase/utility.h: fix the frnd() function to behave as
	  intended by original author. Fixed bug #20920.

2007-08-29 Markus Gothe <nietzsche@lysator.liu.se>

	* libbase/component_hackery.cpp: Removed crufty file.
	* backend/render_handler_agg.cpp: Made trunc() uniform with the
	  one in Date.cpp.

2007-08-29 Sandro Santilli <strk@keybit.net>

	* Makefile.am: distribute old ChangeLog files.

2007-08-29 Sandro Santilli <strk@keybit.net>

	* server/text.h: fix signature of setFont(font*):
	  return void.

2007-08-28 Sandro Santilli <strk@keybit.net>

	* libbase/: image.{cpp,h}, jpeg.{cpp,h}: extend interface
	  for jpeg creators taking tu_file to specify
	  ownership of the input stream.
	* server/swf/tag_loaders.cpp: substitute calls to
	  stream::get_underlying_stream with use of a quick&dirty
	  tu_file adpater using stream underneath.
	* server/stream.h: remove get_underlying_stream method.

2007-08-28 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/stream.h: documented some functions
	
2007-08-28 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp: remove all bug jpeg-related
	  calls to stream::get_underlying_stream.

2007-08-28 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* server/sprite_instance.cpp: comment unused parameter 	

2007-08-28 Sandro Santilli <strk@keybit.net>

	* libbase/jpeg.{cpp,h}: cleanups, aimed at eventually implement
	  different inputs then tu_file (stream, buffer).

2007-08-28 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/actionscript.all/case.as: more tests.
	* server/swf_function.h: set function args to lower case when needed.
	  fix bug #20833.
	  
2007-08-28 Sandro Santilli <strk@keybit.net>

	* server/: Makefile.am, BitsReader.{cpp,h}: new memory bits reader.
	* testsuite/server/: Makefile.am, BitsReaderTest.cpp: unit testing
	  for the new bits reader.

2007-08-28 Deanna Phillips <deanna>

	* libbase/utility.h: define exp2 and log2 if not available
	  based on HAVE_LOG2 and HAVE_EXP2
	* configure.ac: detect availability of log2 and exp2

2007-08-28 Sandro Santilli <strk@keybit.net>

	* server/stream.{cpp,h}: inlined align(), cleanups in read_uint().

2007-08-28 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (read): use ints for twips
	  values, convert to float only when needed (construction of the
	  edges and paths). [last patch was bogus]

2007-08-28 Chad Musick <chadmusick@msbx.net>

	* server/asobj/BlurFilter_as.cpp,.h
	* server/asobj/ColorMatrixFilter_as.cpp,.h
	* server/asobj/ConvolutionFilter_as.cpp,.h
	* server/asobj/DropShadowFilter_as.cpp,.h
	* server/asobj/GlowFilter_as.cpp,.h
	* server/asobj/GradientBevelFilter_as.cpp,.h
	* server/asobj/GradientGlowFilter_as.cpp,.h
	* server/asobj/BevelFilter_as.cpp,.h
	* server/asobj/BitmapFilter_as.cpp,.h
	  Make ActionScript compatible filters
	* server/BevelFilter.h,.cpp
	* server/BlurFilter.h,.cpp
	* server/ColorMatrixFilter.h,.cpp
	* server/ConvolutionFilter.h,.cpp
	* server/DropShadowFilter.h,.cpp
	* server/GlowFilter.h,.cpp
	* server/GradientBevelFilter.h,.cpp
	* server/GradientGlowFilter.h,.cpp
	  Changes necessary for adapter compatibility
	* server/asobj/prophelper.h
	  File to make writing AS classes easier using an adapter
	* server/asobj/Makefile.am
	  Add new files
	 
2007-08-27 Sandro Santilli <strk@keybit.net>

	* libbase/utility.h: don't define exp2(), it's going to clash
	  with existing symbol on most systems (except some BSDen)...
	  Please provide a better patch for BSD.

2007-08-27 Deanna Phillips <deanna>

	* testsuite/misc-ming.all/NetStream-SquareTestRunner.cpp: include
	  <unistd.h>

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (read): make effective
	  use of the SHAPE_LOG compile-time macro, by removing any overhead
	  associated with it, when set to something != 0.

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.cpp (read): use ints for twips
	  values, convert to float only when needed (construction of the
	  edges and paths).

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/stream.cpp (read_sint): remove useless assertion.

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/stream.cpp (read_uint): optimize multi-byte reads:
	  less read_byte(), more read_bytes().
	* testsuite/server/StreamTest.cpp: more read_uint() tests.

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/cxform.cpp, server/font.cpp, server/matrix.cpp,
	  server/stream.h, server/parser/button_character_def.cpp,
	  server/parser/edit_text_character_def.cpp,
	  server/parser/filter_factory.cpp,
	  server/parser/sound_definition.cpp,
	  server/parser/video_stream_def.cpp,
	  server/swf/PlaceObject2Tag.cpp, server/swf/tag_loaders.cpp,
	  utilities/parser.cpp: read_uint(1) => read_bit();
	* server/stream.cpp (read_uint): htf_sweet.swf aborts if we
	  assert bit_count <= 24, so change this base to <= 32 (will
	  inspect later).

2007-08-27 Sandro Santilli <strk@keybit.net>

	* server/stream.{cpp,h}: add read_bit(), optimize read_uint()
	  a little-bit (there are likely more optimization options).
	* server/parser/shape_character_def.cpp (read): use read_bit()
	  instead of read_uint(1).
	* testsuite/server/StreamTest.cpp: more tests for read_bit().

2007-08-27 Markus Gothe <nietzsche@lysator.liu.se>

	* libbase/utility.h: defined exp2() as it's missing on some BSDen.
	* libbase/math.h OS X has got xF().
	* configure.ac check for exp2() and log2().

2007-08-27 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c,
	  testsuite/misc-ming.all/Makefile.am:  more tests, finished
	  deduction, testcase now enabled.	  
	
2007-08-27 Sandro Santilli <strk@keybit.net>

	* testsuite/server/: Makefile.am, StreamTest.cpp:
	  gnash::stream testing (for now it's just bit streaming, as a tool
	  for optimization of the read_uint)

2007-08-27 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/actionscript.all/ops.as: more tests about NaN.
	* testsuite/actionscript.all/toString_valueOf.as: more tests for deduction.
	  
2007-08-27 Chad Musick <chadmusick@msbx.net>

	* server/BevelFilter.cpp,.h: Fuller conversion to AS compatible
	* server/BitmapFilter.h: Fuller conversion to AS compatible
	* server/stream.cpp: Remove dead code from read_fixed
	* server/asobj/Makefile.am Add new files
	* server/parser/filter_factory.cpp: Removed typo bug pointed out by
	  Zou.
	* server/vm/ASHandlers.cpp,.h: Remove use of variable sized array.
	* server/asobj/BevelFilter_as.cpp,.h: Adapter pattern object for using
	  BevelFilter inside of ActionScript (not yet put in global)
	* server/asobj/BitmapFilter_as.cpp,.h: Adapater pattern object for
	  using BitmapFilter inside of ActionScript (not yet put in global)

2007-08-26 Deanna Phillips <deanna>

	* doc/gnash.1: Updated.

2007-08-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp, gui/gtksup.h: Add treeview to Movie Properties
          ready for InfoTree display.

2007-08-26 Chad Musick <chadmusick@msbx.net>

	* server/Makefile.am: Add new files, remove obsolete ones.
	* server/BevelFilter.h,.cpp: A Bevel display object filter
	* server/BitmapFilter.h: Base class for other filters
	* server/BlurFilter.h,.cpp: A Blur display object filter
	* server/ColorMatrixFilter.h,.cpp: A color matrix display filter
	* server/ConvolutionFilter.h,.cpp: A convolution display filter
	* server/DropShadowFilter.h,.cpp: A drop shadow display filter
	* server/GlowFilter.h,.cpp: A glow display filter
	* server/GradientBevelFilter.h,.cpp: A gradient bevel filter
	* server/GradientGlowFilter.h,.cpp: A gradient glow filter
	* server/filters.h,.cpp: Removed (split to other files)
	* server/stream.h,stream.cpp: Added read_float, read_short_ufixed,
	  fixed calculation of value in read_short_fixed, added read_ufixed
	* server/parser/filter_factory.h,.cpp: parsing code of filters
	* server/swf/PlaceObject2Tag.cpp: Changed to use new filters

2007-08-26 Sandro Santilli <strk@keybit.net>

	* configure.ac: keep mit-shm enabled by default (use --disable-mit-shm
	  to disable).
	* doc/C/usermanual/installation/feature_configuration.xml: update
	  documentation about --disable-mit-shm.

2007-08-26 Lauri Myllari    <lauri.myllari@gmail.com>

	* gui/gtk_glue_agg.cpp: fix expose events with mit-shm, by
	  disabling double buffering for _drawing_are

2007-08-26 Sandro Santilli <strk@keybit.net>

	* server/asobj/string.cpp (string_split): correctly handle some more
	  corner cases.
	* testsuite/swfdec/PASSING: string-split-empty-*.swf tests succeed.
	* testsuite/actionscript.all/String.as: some more testing for
	  String.split

2007-08-25 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/toString_valueOf.as: note that any
	  function is equal to any other in SWF5...
	* testsuite/actionscript.all/ops.as: more tests about isNaN(x) when
	  x != NaN (odd)

2007-08-25 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionNewLessThan): convert operands to
	  primitive value before proceeding.
	* testsuite/actionscript.all/ops.as: xcheck => check

2007-08-25 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (ActionNewAdd): convert operands to
	  primitive value before proceeding.
	* server/as_value.h: make to_primitive() public
	* server/as_value.cpp (to_number): if valueOf returned a string value
	  call to_number() again on it; (equals): if one operand is a string
	  and the other is a number, don't compare unless the string converts
	  to a non-infinite number.
	* testsuite/actionscript.all/Number.as: add test for 'string'
	  convertion to number returning NaN
	* testsuite/actionscript.all/ops.as: xcheck => check
	* testsuite/actionscript.all/toString_valueOf.as xcheck => check

2007-08-24 Sandro Santilli <strk@keybit.net>

	* server/dlist.{h,cpp} (replace_character): call unload() on replaced
	  character and document the fact.
	* server/as_value.cpp: undefine the MOVIECLIP_AS_SOFTREF macro, tweak
	  equalSameType() and to_sprite() to use MOVIECLIP targets only when 
	  they are unloaded.
	* testsuite/misc-ming.all/displaylist_depths_test2.c: xcheck => check
	  (no more failures from this test)
	* testsuite/actionscript.all/MovieClip.as: xcheck => check
	  (soft-references related)
	* testsuite/actionscript.all/case.as: xcheck => check (soft refs).

2007-08-24 Miriam Ruiz <little_miry@yahoo.es>

        * plugin/klash/klash_part.cpp: Patch for GNASHEXE.

2007-08-24 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: more test for 
	  soft references.
	* server/as_value.cpp: fix build when MOVIECLIP_AS_SOFTREF is
	  undefined.
	* server/swf/PlaceObject2Tag.cpp (loader): remove unused variable.
	* server/as_environment.{cpp,h}: use a static const for expressing
	  number of global registers.

2007-08-24 Sandro Santilli <strk@keybit.net>

	* libbase/: tree.hpp => tree.hh: don't change original name of
	  external source code.
	* libbase/Makefile.am: distribute tree.hh

2007-08-24 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/MovieClip.as: test that '_root' and
	  '_level0' can be accessed as members of a movieclip, while 'this'
	  cannot.
	* testsuite/actionscript.all/delete.as: add TODO request for testing
	  variable access by path
	* testsuite/actionscript.all/getvariable.as: add test for accessing
	  slash-based paths starting with 'this'
	* server/sprite_instance.cpp (get_member): don't consider 'this' as
	  a member.
	* server/as_environment.cpp (find_object_{slash,dot}syntax): handle
	  paths starting with 'this'.

2007-08-24 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c: add a new 
	  testcase for EditText variables, not enabled yet, need review.
	  
2007-08-24 Chad Musick <chadmusick@msbx.net>

	* server/swf/PlaceObject2Tag.cpp,h: Add support for the
	  PlaceObject3 tag.  This immediately improves some SWF 8
	  support.  The tag still needs to do something with the
	  filters which it loads.
	* server/impl.cpp: Add a loader for PlaceObject3, remove
	  loaders for DefineShape4, which isn't yet functional.

2007-08-24 Chad Musick <chadmusick@msbx.net>

	* server/swf.h: Add FOCAL_GRADIENT to fill styles.

2007-08-24 Chad Musick <chadmusick@msbx.net>

	* server/stream.cpp,h: Add read_short_fixed() function for
	  what short fixed values (16 bits) are needed rather than
	  long fixed values (32 bits) from the SWF stream.

2007-08-24 Chad Musick <chadmusick@msbx.net>

	* server/filters.cpp,h: Effect filters for PlaceObject3 and
	  for buttons. No current effect, but it parses correctly from SWF.
	* Makefile.am: Add the filters files.

2007-08-23 Sandro Santilli <strk@keybit.net>

	* server/as_environment.h: document case-sensitiveness of
	  find_target.
	* server/character.{h,cpp} (get_relative_target_common):
	  document and fix case-sensitiveness.
	* server/vm/ASHandlers.cpp (ActionSetProperty): log a actionscript
	  error if trying to set the property of an unknown target.
	* server/sprite_instance.cpp (get_member, get_relative_target): be
	  case sensitive/insensitive based on SWF target version.
	* testsuite/actionscript.all/case.as: more tests; some unexpected
	  successes, some unexpected failures.

2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_agg.cpp: remove need_shape_bounds()
	
2007-08-23 Sandro Santilli <strk@keybit.net>

	* server/parser/shape_character_def.{cpp,h}: document
	  the read function; compute bound when not available
	  in the SWF (glyphs in DEFINEFONT*).

2007-08-23 Sandro Santilli <strk@keybit.net>

	* libamf/amf.{cpp,h}: fixed a bunch of memory errors, added
	  some dox, first pass to interface clean ups.
	* testsuite/libamf.all/Makefile.am: add testsuite/ to the 
	  include dir, to allow for using our check_equals functions.
	* testsuite/libamf.all/: test_object.cpp, test_string.cpp,
	  test_variable.cpp: fixed new[]/delete mismatches.

2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_agg.cpp: Initial support for glyphs
	  with known bounds

2007-08-23 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/case.as: reduce alpha of clips used
	  for visual checking, to avoid hiding the visual traces; don't
	  print totals twice.

2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler.h, backend/render_handler_agg.cpp, 
	  backend/render_handler_tri.{cpp,h}, server/edit_text_character.cpp,
	  server/render.cpp, server/render.h: add parameter "masked" to 
    draw_poly(), adjust calls to this function and implement (un)masked
    polygons in AGG renderer (see bug #20655).
	* backend/render_handler_agg.cpp: draw_line_strip() now applies masks 

2007-08-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{cpp,h}: expandPath called on non-POSIX systems
	  for other path operations. Whitelist and blacklist now space
          not colon separated. NOTE: old lists still work, but should
          be deprecated. Made private: extractSetting, extractNumber.
          Minor code cleanups.
	* docs/C/usermanual/usage/gnashrc.xml: add info about black-
          and whitelists.

2007-08-23 Sandro Santilli <strk@keybit.net>

	* configure.ac: move BOOST macro detector invocation after
	  PTHREAD one, as the former requires the latter.

2007-08-23 Deanna Phillips <deanna>

	* macros/pthreads.m4: set pthread flags to -pthread for openbsd.
	* libbase/rc.cpp: include unistd.h for getuid()

2007-08-23 Markus Gothe <nietzsche@lysator.liu.se>

	* libamf/amf.cpp: memcpy -> strncpy, since it does a memory 
	access violation on Darwin (and probably other OSes).

2007-08-23 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/Makefile.am: specify input language 
	  in MTASC_CPP, so we can use a filename again (rather then
	  get meaningless <stdin> printed for __FILE__).
	* gui/gui.{cpp,h}: Use kasper's tree class for getMovieInfo
	  (InfoTable is now an InfoTree)
	* gui/gtk.cpp (menuitem_movieinfo_callback): fix to use
	  an InfoTree - just a leaf-iteration.

2007-08-23 Sandro Santilli <strk@keybit.net>

	* libbase/tree.hh: include generic tree class by
	  Kasper Peeters <kasper.peeters@aei.mpg.de>

2007-08-23 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-mtasc.all/exception.as: more tests for
	  try/catch/finally.

2007-08-22 Sandro Santilli <strk@keybit.net>

	* server/swf.h: add version and reference url to
	  ACTION_TRY and ACTION_THROW
	* server/parser/action_buffer.h: add read_uint8() method.
	* server/vm/ASHandlers.cpp: stub ACTION_TRY handler
	  (parsed the tag, doesn't do anything with the info yet).
	* testsuite/misc-mtasc.all/exception.as: more tests for
	  try/catch/finally.

2007-08-22 Sandro Santilli <strk@keybit.net>

	* testsuite/misc-ming.all/DrawingApiTestRunner.cpp:
	  Try another work-around to gcc-4.1.2 bug, commented
	  this time.
	* testsuite/actionscript.all/MovieClip.as:
	  Modify syntax used to test for functions availability
	  to cope with a bug in Ming < 00040005.
	  Should fix bug #20867.

2007-08-22 Chad Musick <chadmusick@msbx.net>

	* server/font.h, server/font.cpp: Define
	  m_display_name and m_copyright_name for the
	  DefineFontName tag (88) of SWF 9, reader
	  for the tag.
	* server/swf.h Add DEFINEFONTNAME tag to list.
	* server/impl.cpp Set loader for DefineFontName
	* server/swf/tag_loaders.h,.cpp Add loader for
	  DefineFontName tag.

2007-08-22 Sandro Santilli <strk@keybit.net>

	* configure.ac: bail out if kde gui or kparts plugin are
	  requested but kde/qt deps are not met. Should fix bug
	  #20848.

2007-08-22 Sandro Santilli <strk@keybit.net>

	* configure.ac: bail out if boost_thread is not set to yes.
	* macros/boost.m4: check for boost/thread.hpp. Should fix
	  bug #20847.

2007-08-22 Zou Lunkai <zoulunkai@gmail.com>
	
	* testsuite/misc-ming.all/masks_test2.c, 
	  testsuite/misc-ming.all/masks_test2runner.cpp, 
	  testsuite/misc-ming.all/Makefile.am: new testcase for nested masks.
	  
2007-08-22 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/dlist.cpp, server/sprite_instance.cpp: handle hiden characters
	  as masks, passed UdoG's test files.
	
2007-08-22 Chad Musick <chadmusick@msbx.net>

	* server/impl.cpp: Add tag loaders (default loaders)
	  for SWF9 opcodes, plus some older opcodes which were
	  not present.

2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* gui/gtk.cpp: rename View->MovieInfo to View->Properties,
	  make layout nicer and labels selectable.

2007-08-21 Sandro Santilli <strk@keybit.net>

	* libbase/embedVideoDecoderGst.cpp (createDecoder): don't
	  abort if outputFormat is NONE (renderer missing).
	  Fixes bug bug #20852.

2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac: look for getpwnam
	* libbase/rc.cpp (expandPath): don't try to use getpwnam
	  if not provided by OS.

2007-08-21 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* gui/gui.cpp: Introduce FORCE_REDRAW macro

2007-08-21 Sandro Santilli <strk@keybit.net>

	* server/text.h: documentation bits for text_glyph_record
	* server/edit_text_character.{cpp,h}: Add support for dynamic 
	  wordWrap setting and initial autoSize handling.
	* server/parser/edit_text_character_def.h: style & cleanups.
	* testsuite/actionscript.all/TextField.as: more successes.

2007-08-21 Chad Musick <chadmusick@msbx.net>

        * testsuite/misc-ming.all/DrawingApiTestRunner.cpp
	  Add a . output to stderr to fix a problem with make check in some
	  versions of gcc.

2007-08-21 Udo Giacomozzi <udo.gnu@nova-sys.net>

	* backend/render_handler_tri.cpp: fix world_to_pixel() so that OpenGL
	  works again 	

2007-08-21 Chad Musick <chadmusick@msbx.net>

	* server/swf.h: Add new tag values for SWF 9 support.

2007-08-21 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/dlist.cpp: update display(), for masks, please check.
	
2007-08-21 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.cpp (add_invalidated_bounds): use
	  instance bounds, not definition ones; reformat text when _width
	  or _height changes.
	* testsuite/misc-swfc.all/Makefile.am: use an absolute
	  path for MEDIADIR to make swfc happy; don't do anything
	  on make check if SWFC is not enabled.

2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{cpp,h}: Fixes a typo, matches the whole username if
	  there's no slash (following POSIX) and makes expandPath
	  (not expandTilde) private.

2007-08-20 Chad Musick <chadmusick@msbx.net>

	* server/vm/ASHandlers.h: Add helper function for multi-byte
	  string handling
	* server/vm/ASHandlers.cpp: Implement helper function for multi-
	  byte strings and implement multi-byte versions of strlen,
	  substr, and chr

2007-08-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac: look for the pwd.h header
	* doc/C/usermanual/usage/gnashrc.xml: add info about tilde expansion.
	* libbase/rc.{cpp,h}: add support for tilde expansion in debugLog
	  value.

2007-08-20 Sandro Santilli <strk@keybit.net>

	* libbase/log.{cpp,h}: print an error on stderr of the debug log file
	  can not be opened for writing. Minor cleanups (including dox).

2007-08-20 Sandro Santilli <strk@keybit.net>

	* server/vm/ExecutableCode.h (FunctionCode::markReachableResources):
	  Don't mark the function twice, and most importantly don't forget
	  to mark the target character !!

2007-08-20 Asger Ottar Alstrup <asger@area9.dk>

	* testsuite/misc-mtasc.all/: Makefile.am, exception.as:
	  Test for try/catch (gnash fails).

2007-08-20 Sandro Santilli <strk@keybit.net>

	* testsuite/libbase/: TCXXRc.cpp, gnashrc.in:
	  Test 'set debuglog' directive.

2007-08-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/log.cpp: fix 'set debuglog' directive.

2007-08-19 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/ops.as: test that NaN and undefined are
	  not less one other.
	* server/vm/ASHandlers.cpp (ActionGetVariables): simplify debugging
	  output.

2007-08-19 Sandro Santilli <strk@keybit.net>

	* server/vm/ASHandlers.cpp (CommonGetUrl): check for _level#
	  loading even when loadTargetFlag is clear.
	* server/FreetypeGlyphsProvider.cpp: remove compiler warnings.
	* doc/C/usermanual/usage/gnashrc.xml: document
	  flashVersionString variable.

2007-08-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* libbase/rc.{cpp,h}: Avoid string copies in inspectors;
	  add getFlashVersionString (support for
	  "set flashVersionString Bla bla bla" in gnashrc).
	* server/vm/VM.cpp (getPlayerVersion): Query RcInit for version
	  string
	* testsuite/libbase/: TCXXRc.cpp, gnashrc.in:
	  Add test for 

2007-08-19 Markus Gothe <nietzsche@lysator.liu.se>

	* testsuite/libbase/Makefile.am, 
	testsuite/libamf.all/Makefile.am: Added DEJAGNU_CFLAGS.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (define_bits_lossless_2_loader):
	  ensure bytes, not bits!
	* server/vm/ASHandlers.cpp (CommonGetUrl): always check
	  for URL (security). Give precedence to loadVariable calls
	  even if target is _level#. Fixes load of uptoten.com.
	* plugin/plugin.cpp: Use the environmental variable
	  GNASH_PLUGIN_DESCRIPTION for the plugin description
	  (when set).

2007-08-18 Sandro Santilli <strk@keybit.net>

	* server/video_stream_instance.cpp: mark characters created
	  using new Video as dynamic.
	* server/character.h (isDynamic): remove bogus assertion
	  failing for dynamically-loaded movies.

2007-08-18 Petr Pisar <petr.pisar@atlas.cz>

	* po/cs.po: updated to version of 20070804

2007-08-18 Sandro Santilli <strk@keybit.net>

	* libbase/log.cpp: change the log_unimpl label to UNIMPLEMENTED.
	* server/text.cpp (resolve_font): fix missing return.
	* server/parser/text_character_def.cpp: fix compiler warnings.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* gui/gui.{cpp,h}: add a getMovieInfo() function as a quick hack
	  to print movie information.
	* gui/: gtk.cpp, gtksup.h: add a View->movieInfo menu item.

2007-08-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* configure.ac: define flash player version macros
	  for compatibility detectors.
	* plugin/plugin.cpp: build the flash player version
	  using provided macros.
	* server/vm/VM.cpp: buil flash player version using
	  provided macros.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* server/as_object.h (ensureType): fix printing of *source* type
	  name.
	* macros/firefox.m4: don't substitute GNASHEXE at all, it's not
	  used anymore.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* server/text.{cpp,h}: make text_style class store only the font
	  pointer, w/out the font_id, provide setFont and getFont
	  methods, the former always performing a lookup.
	* server/parser/text_character_def.cpp (read): use
	  text_style::setFont() to set the font this properly updates
	  the actual font pointer in the text_format, fixing bug #20812.
	* server/edit_text_character.cpp: use text_style::setFont() to
	  set font by pointer.
	* server/parser/: movie_definition.h, movie_def_impl.{h,cpp},
	  sprite_definition.h: const-correct get_font() method.
	* server/parser/movie_def_impl.{h,cpp}: const-corrected
	  in_import_table(), made private and re-activated assertion
	  checking temporarly removed during to GC layout changes.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* server/parser/text_character_def.cpp: use symbolic names for
	  tag types, more verbose parsing.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* libbase/jpeg.cpp (jpeg_error_exit): only print SWF errors if
	  configured to do so; (input_impl): throw an exception if
	  jpeg_read_header detected errors.
	* server/swf/tag_loaders.cpp (jpeg_tables_loader,
	  define_bits_jpeg_loader): early exception checking to avoid
	  parser interruption on malformed embedded jpeg.

2007-08-18 Felix Eckhofer <felix@tribut.de>

	* plugin/klash/klash_part.cpp: use the -u switch when invoking
	  the standalone gnash. Fixes youtube playback for konqueror.
	  Still missing -U and -P switches.

2007-08-18 Sandro Santilli <strk@keybit.net>

	* macros/firefox.m4: drop --with-gnashexe and GNASHEXE macro
	* plugin/Makefile.am: define GNASHBINDIR based on ${bindir}
	* plugin/klash/Makefile.am: define GNASHBINDIR based on ${bindir}

2007-08-17 Sandro Santilli <strk@keybit.net>

	* server/sprite_instance.cpp (setVariables):
	  Convert variable names to lowercase when needed.
	* testsuite/misc-ming.all/: Makefile.am, FlashVarsTest.{as,html}:
	  Test that parameter names are converted to lowercase when target
	  SWF is < 7.

2007-08-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>

	* server/vm/VM.cpp (getPlayerVersion): define FLASH_VERSION as
	  a compatibility version for use by $version or
	  System.capabilities.version based version detection kits.
	  (TODO items added for a cleaner handling of this).
	* plugin/plugin.cpp: define FLASH_VERSION as a compatibility version
	  for use by javascript-based flash version detection kits.

2007-08-17 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/as_function.cpp: initialize '__proto__' instead of 'constructor'.
	* testsuite/actionscript.all/Inheritance.as: more passes.

2007-08-17  Alfred M. Szmidt  <ams@gnu.org>

	* configure.ac: State that a <= 2.4 version of AGG is an error.

2007-08-16 Takashi Iwai <tiwai@suse.de>

	* libbase/network.cpp (Network::createServer): fix a bug making
	  the test for DEFAULTPROTO == "udp" always fail.

2007-08-16 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: have a Range2d member to express
	  current TextField boundary (_width,_height). Implement _width and
	  _height setters. Add compile-time macro for debugging (still doesn't
	  work as expected).
	* server/gnash.h: add more descriptions, a set() method and TODO items
	  for the 'point' class.
	* testsuite/actionscript.all/TextField.as: more passes.

2007-08-16 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/misc-ming.all/registerClassTest2.c, Makefile.am: new testcase
	  for Object.registerClass.
	* testsuite/misc-ming.all/registerClassTest.c, 
	  testsuite/actionscript.all/Object.as, toString_valueOf.as: testcases review,
	  minor comments or changes.
	* testsuite/actionscript.all/Inheritance.as: more tests. testing for inheritance
	  never stops:)
	
2007-08-15 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: a few more tests for
	  interaction between _width, autoSize and wordWrap (more needed).

2007-08-15 Zou Lunkai <zoulunkai@gmail.com>

	* testsuite/actionscript.all/Object.as: more tests and new failures.
	  
2007-08-14 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* backend/sound_handler_sdl.cpp: Also count sounds who stops
	  because the reached the end. Fixes random eventSoundTest1
	  failures.

2007-08-14 Ivor Blockley <meteoryte@yahoo.com.au>

	* server/array.cpp: replace VLAs with std containers.
	  
2007-08-13 Sandro Santilli <strk@keybit.net>

	* testsuite/actionscript.all/TextField.as: add more tests for
	  background, backgroundColor and interaction between _width and
	  autoSize.

2007-08-13 Zou Lunkai <zoulunkai@gmail.com>

	* server/sprite_instance.{h,cpp}: deprecate clone_display_object(), use 
	  duplicateMovieClip() instead.
	* testsuite/actionscript.all/ops.as: more tests.
	* testsuite/samples/gotoFrameOnKeyEvent-TestRunner.cpp: finish the test runner.

2007-08-12 Sandro Santilli <strk@keybit.net>

	* server/edit_text_character.{cpp,h}: add autoSize getter/setter
	  (still not used)
	* testsuite/actionscript.all/TextField.as: add tests for autoSize
	  member.
	* testsuite/misc-ming.all/DefineEditTextTest.c: add TODO items.

2007-08-12 Sandro Santilli <strk@keybit.net>

	* server/as_value.h: add is_bool()
	* server/edit_text_character.h (getBounds): add TODO item
	  (I belive is a fix for bug #20760)

2007-08-10 Sandro Santilli <strk@keybit.net>

	* backend/sound_handler_sdl.cpp: fix build for MAD media handler.
	* server/shape.cpp: remove useless include of hash_wrapper.h
	* gui/Makefile.am: fix build of sdl/cairo
	* configure.ac: abort if a requested renderer/gui combination
	  isn't supported (checked for gtk/kde/sdl/fb/fltk)

2007-08-10 Sandro Santilli <strk@keybit.net>

	* gui/Makefile.am: typo preventing gtk/cairo combination from building
	* server/FreetypeGlyphsProvider.{cpp,h}: add a destructor getting
	  rid of the resources associated with a face.
	* configure.ac: FLTK/OGL isn't supported, while SDL/OGL is !
	* testsuite/media/: README, sound1.wav:
	  Moved sound1.wav data from swfc dir to media dir,
	  add some info about it and sound1.mp3.
	* testsuite/misc-swfc.all/sound.wav: moved to
	  media/sound1.wav
	* testsuite/misc-swfc.all/Makefile.am: define MEDIADIR
	* testsuite/misc-swfc.all/check.sc: define a MEDIA
	  macro
	* testsuite/misc-swfc.all/sound.sc: use the MEDIA macro
	  to find media stuff.

2007-08-10 Sandro Santilli <strk@keybit.net>

	* Makefile.am, configure.ac, testsuite/Makefile.am,
	  testsuite/misc-swfc.all/Makefile.am:
	  Enable swfc testsuite if 'swfc' is found on the system.

2007-08-10 David Rorex  <drorex@gmail.com>

	* server/FreetypeGlyphsProvider.cpp: minor change to print the
	  freetype glyph format in human readable form. patch #6148.

2007-08-10 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.{cpp,h}: refactor the check for call stack
	  depth at end of execution to take depth at *start* of execution
	  into account.

2007-08-10 Sandro Santilli <strk@keybit.net>

	* server/vm/ActionExec.cpp (cleanupAfterRun): don't assume the call
	  stack should be empty at the end of global code execution. Still
	  print an error as we need further investigation about it. Fixes
	  bug #20740.

2007-08-10 Paul Smedley <paul@smedley.info>

	* libbase/URL.cpp, libbase/container.h, libbase/network.cpp,
	  libbase/network.h, libbase/tu_config.h, libbase/tu_timer.cpp,
	  server/shm.cpp, server/shm.h, server/vm/ASHandlers.cpp,
	  utilities/dumpshm.cpp: Build support for OS/2.

2007-08-10 Sandro Santilli <strk@keybit.net>

	* server/parser/Timeline.h (getFrameDepths): lock the mutex, as
	  documented in method description.

2007-08-10 Tomas Groth Christensen <tomasgroth@yahoo.dk>

	* backend/sound_handler.h, backend/sound_handler_{sdl,gst}.{h,cpp},
	  server/swf/tag_loaders.cpp: Introduce the SoundInfo class which 
	  contains the properties of the sound (format, samplerate, etc.).
	  When parsing a sound-tag the SoundInfo-object is created and
	  passed to the soundhandler along with the audio data, and the
	  parser can later ask for the SoundInfo-object for a specific
	  sound, which is needed when parsing sound-streams.

2007-08-10 Alexander Sack <asac@jwsdot.com>

	* backend/Makefile.am, libamf/Makefile.am, libbase/Makefile.am,
	  libgeometry/Makefile.am, plugin/mozilla-sdk/Makefile.am,
	  server/Makefile.am: use $pkglibdir for unversioned libs.

2007-08-09 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp (sound_stream_block_loader): don't
	  discard the first 4 bytes if not reading an MP3. Makes ADPCM
	  sound better for the feed.swf case (but ADPCM decoder needs
	  lot more work to be correct)

2007-08-09 Sandro Santilli <strk@keybit.net>

	* server/FreetypeGlyphsProvider.cpp (getGlyph): don't abort if
	  FT_Load_Char doesn't return an outline glyph, rather print
	  an UNIMPLEMENTED message and the type of glyph you got.
	* server/swf/tag_loaders.cpp (ADPCMDecoder::adpcm_expand):
	  Rather then throwing a ParseException, just print an error
	  as it's much likely the error is in Gnash parser, rather
	  then in a malformed SWF, and tests show we do a better
	  job like that then by stopping the parser.
	  Also, print an error if the bytesNeeded computation doesn't
	  match the actual number of bytes read.

2007-08-09 Sandro Santilli <strk@keybit.net>

	* server/swf/tag_loaders.cpp: move all ADPCM-related code in an
	  ADPCMDecoder class.
	* README_CVS: minimum version of automake is 1.9.6. 1.7 and 1.8 have
	  been tried w/out success. Might be a regression, but that is...
	* server/button_character_instance.cpp (construct): properly construct
	  all button child characters. Fixes bug #20729.
	* server/swf/tag_loaders.cpp (adpcm_expand): another try at fixing the
	  needed bytes count for compressed adpcm samples. Also, remove call
	  to ceil.

2007-08-09 Zou Lunkai <zoulunkai@gmail.com>
	
	* server/character.h: add a constant 'noRatioValue'.
	* server/dlist.cpp: In function move_display_object(), don't set ratio
	  to zero when no ratio value provided by the displaylist tags; In function
	  reset(), remove all none-referenceable characters.
	* server/parser/timeline.h: revert to 1.3, keep strk's design, use std::set
	  instead of std::map.
	* server/parser/movie_def_impl.h, movie_definition.h, sprite_definition.h:
	  update interface of getTimelineDepths().
	* server/parser/morph2_character_def.cpp: set ratio value to zero at rendering 
	  time when no one is provided. 
	* server/sprite_instance.h: add a member variable is_jumping_back.
	* server/sprite_instance.cpp: reimplement add_display_object(); cleanup 
	  goto_frame(); wipe out timeline design 1,2,3; deprecate resetDisplayList();
	  ready to deprcate 'replace_if_depth_is_occupied '.
	* server/swf/placeObject2Tag.cpp: set ratio to character::NoRatioValue instead of
	  zero when no ratio provided.
	* testsuite/misc-ming.all/place_and_remove_object_insane_test.c: xchecks to checks.
	  should fix bug 20504. All in all, hopefully improved the old timeline design.
	
2007-08-09 David Rorex  <drorex@gmail.com>

	* testsuite/misc-swfc.all: new directory for testcases.
	* testsuite/misc-swfc.all/check.sc, Dejagnu.sc, sound.sc, hello.sc,
	  sound.wav, Makefile.am: new test framework by using swfc.

