1 2008-03-04 Sandro Santilli <strk@keybit.net>
3 * doc/C/Makefile.am: remove generated dox on 'make clean'
4 (not maintainer-clean). drop references to gnashuser.info
5 and gnashref.info (the official ones are gnash_user.info
8 2008-03-04 Sandro Santilli <strk@keybit.net>
10 * doc/C/Makefile.am: don't distribute a second copy of
11 preformatted .info, .html and man files, all preformatted
12 copies are already in the preformatted/ subdir.
14 2008-03-04 Sandro Santilli <strk@keybit.net>
16 * doc/C/Makefile.am: Preformatted html files don't have
17 the embedded underscore..
19 2008-03-04 Sandro Santilli <strk@keybit.net>
21 * Makefile.am: --with-plugindir was deprecated in favor
22 of --with-npapi-plugindir. Update distcheck flags.
23 * doc/C/Makefile.am: explicitly list file to distribute.
24 Adding a dir to EXTRA_DIST wasn't working, and is discouraged:
25 http://www.delorie.com/gnu/docs/automake/automake_91.html
27 2008-03-04 Sandro Santilli <strk@keybit.net>
29 * doc/C/Makefile.am: add a trailing slash on dirs added to
30 EXTDA_DIST. Fixes 'make dist' with automake 1.96.
31 * configure.ac: this branch is 0.8.2 ...
33 2008-03-04 Sandro Santilli <strk@keybit.net>
35 * server/sprite_instance.cpp: check arguments of drawing api
36 functions for being finite.
37 * testsuite/misc-ming.all/DrawingApiTest.as: test passing
38 non-finite parameters to the drawing api.
39 * backend/: render_handler_agg.cpp, render_handler_ogl.cpp:
40 Revert Bastiaan patch casting to int, the problem is in
43 2008-03-04 Sandro Santilli <strk@keybit.net>
45 * doc/C/bugreport.xml, doc/C/doc_authors.xml, doc/C/gnashref.xml,
46 doc/C/gnashuser.xml, doc/C/introduction.xml, doc/C/security.xml,
47 doc/C/usermanual/gnashrc.xml: Add missing files. distcheck
50 2008-03-03 Bastiaan Jacques <bastiaan@bjacques.org>
52 * backend/render_handler_{agg,ogl}.cpp: Wallpaper over bug #22462:
53 - (NaN coordinates fed to renderer).
55 2008-03-03 Rob Savoye <rob@ripple.welcomehome.org>
57 * Makefile.am: Add packaging files to EXTRA_DIST. Drop the
59 * packaging/debian: Minor changes to start working with HEAD.
60 * packaging/deb.am: Copy the debian packaging files from the
61 source tree to the snapshot directory do dpkg-buildpackage can
63 * packaging/redhat/gnash.spec: Update for current layout.
64 * configure.ac: Add a --disable-testsuite option for package
65 builders. This spends builds up, and we already tested Gnash
66 before packaging, right ?
67 * Makefile.am: Always include testsuite directory, but don't add it
68 to SUBDIRS. Install the packaging files.
69 * doc/C/Makefile.am: Add some extra dependencies to keep distcheck
71 * testsuite/samples/Makefile.am: Add AGG_LIBS.
72 * doc/C/Makefile.am: Tweak how images get installed so distcheck
74 * po/fi.po: Finish translation by Timo Jyrinki.
75 * po/Makefile.am: Build finish translation.
76 * doc/C/preformatted: Update.
77 * doc/C/Makefile.am: Furthur tweaking of the .xml.texi rule so it
78 works with versions to correctly produce both info files. On
79 Fedora, it kept only creating gnash_user.info. Fix install rule to
80 deal with multiple versions of install-info. Add --dir-file= when
82 * doc/C/refmanual/internals.xml: Use <emphasis> instead of <code>,
83 as <code> doesn't appear to be supported on Fedora.
84 * doc/C/refmanual/extensions/extensions.xml: Use <emphasis>
85 instead of <code>, as <code> doesn't appear to be supported on
87 * doc/C/Makefile.am: For the perl based version of the docbook
88 tools, pipe directly through makeinfo to avoid file name
89 transformation problems.
90 * doc/C/Makefile.am: Print warning when linking to preformatted
91 versions that they may be out of date. Change path to preformatted
93 * packaging/doc: Moved to doc/C/preformatted.
94 * doc/C/preformatted: Moved from packaging/doc, this location
95 makes more sense, and is simpler.
96 * doc/C/usermanual.bugreport.xml: Move file up one directory so it
98 * doc/C/usermanual/glossary.xml, gnashrc.xml, installation.xml,
99 usage.xml: Cleanup bad internal links. Drop "colspec" from tables
100 as it causes too many warnings, hiding other problems.
101 * doc/C/refmanual/building.xml, code_dependencies.xml,
102 configuration.xml, custompath_configuration.xml,
103 documentation_dependencies.xml, feature_configuration.xml,
104 install.xml, internals.xml, testing_dependencies.xml: Cleanup bad
105 internal links. Drop "colspec" from tables as it causes too many
106 warnings, hiding other problems.
107 * doc/C/gnashuser.xml: Change path to bugreport.
108 * doc/C/gnashref.xml: Include bugreport.
109 * doc/C/Makefile.am: Tweak dependencies more to deal with all the
110 weird variations of docbook utils and docbook2X between platforms.
111 * packaging/deb.am: Add snapshot-deb target.
112 * testsuite/misc-ming.all/Makefile.am: Add BOOST_CFLAGS for older
114 * doc/C/refmanual/logging.xml: Add new log_*() functions. Mark C++
115 streaming API as discouraged.
116 * doc/C/Makefile.am: Add extra dependencies for the gnash
117 reference manual, now that it's back to life.
118 * doc/C/appendix.xml: Don't include RTMP chapter here.
119 * doc/C/refmanual/codestyle.xml: Don't include RTMP chapter
120 here. Drop useless opcode section.
121 * doc/C/gnashref.xml: Rearrange top level chapters.
122 * doc/C/refmanual/configuration.xml: Don't include featureoptions
123 or custompath here anymore.
124 * doc/C/refmanual/internals.xml: Update to match reality. Add new
126 * doc/C/refmanual/new_as_class.xml: Include asvaluie section here
128 * doc/C/refmanual/building.xml, code_dependencies.xml,
129 configuration.xml, cross_compiling.xml,
130 custompath_configuration.xml, documentation_dependencies.xml,
131 feature_configuration.xml, testing_dependencies.xml: Updated to
133 * doc/C/refmanual/new_as_class.xml: changes to a chapter. Merge
134 main.xml into body. Include as_value.xml from here.
135 * doc/C/refmanual/as_value.xml: Make a sect1 for new_as_class.
136 * doc/C/Makefile.am: Tweak dependencies for the info files, as
137 they go through a name transformation, which is unfortunately
138 different between Ubuntu and Fedora. Additional tweaks for Ubuntu
139 Hardy, the .texi names don't get transformed during this step for
140 this version of the docbook tools.
141 * doc/C/Makefile.am: Link to the preformatted info file, which is
142 messy because of the name transformation.
143 * configure.ac: Always Define Docbook Conditionals or make fails.
144 * packaging/gnash_ref.info.in, gnash_user.info.in,
145 gnashuser.html.in gnashuser.ref.in: Preformatted versions of the docs.
146 * doc/C/usermanual/usage, installation, actionscript: Move to
148 * macros/docbook.m4: Look for install-info program too, which we
149 need to add entries to the system wide info 'dirs' file.
150 * doc/C/gnashref.xml: New reference manual top level page. This
151 contains much of what was in the old manual.
152 * asspec/*: Move to BackLash directory.
153 * doc/C/Makefile.am: don't list asspec files. Add directory for
154 installing html file. Add separate variables for the user manual
155 and the reference manual. Get rid of the useless
156 entities. variable. Drop include xmlmake and omfmake, fix tghe
157 rules and move them to the main Makefile. Fix info target so they
158 actually build correctly, and install in the dirs file. Install
159 and uninstall all the docs produced. Comment out GNOME help
161 * doc/omf.make, xmldocs.make: Don't use anymore.
162 * doc/C/usermanual: Rewritten.
163 * usermanual/introduction.xml, /doc_authors.xml: Moved up one
164 directory so it can be shared with the reference manual.
165 * doc/C/usermanual/gtkext.xml, internals.xml, logging.xml,
166 mysqlext.xml, object.xml, opcodes.xml, plugin.xml, rtmp.xml,
167 sources.xml: Move to reference manual.
168 * doc/C/refmanual/amf.xml, internals.xml, memory.xml, plugin.xml,
169 sources.xml, as_value.xml, logging.xml, new_as_class.xml,
170 revisions.xml, codestyle.xml, main.xml, object.xml, rtmp.xml:
171 Moved from the user manual and top level.
172 * doc/C/asspec/*: All files moved to BackLash directory.
173 * doc/backLash/accessibility.xml, array.xml, asspec.xml,
174 boolean.xml, button.xml, camera.xml, color.xml, contextmenu.xml,
175 customactions.xml, date.xml, error.xml, fdl-appendix.xml,
176 function.xml, key.xml, legal.xml, loadvars.xml,
177 localconnection.xml, math.xml, microphone.xml, mouse.xml,
178 movieclip.xml, moviecliploader.xml, netconnection.xml,
179 netstream.xml, number.xml, selection.xml,
180 sharedobject.xml,sound.xml, stage.xml, string.xml, system.xml,
181 textfield.xml, textformat.xml, textsnapshot.xml, video.xml,
182 xml.xml, xmlnode.xml, xmlsocket.xml: Move from asspec directory.
184 2008-03-03 Sandro Santilli <strk@keybit.net>
186 * server/parser/sprite_definition.{cpp,h}: delegate
187 exports and dictionary chars to containing movie
188 definition. Fixes bug #22468.
189 * server/swf/tag_loaders.cpp: log malformed SWF for
190 export tags inside define sprite.
192 2008-03-03 Timo Jyrinki <timo.jyrinki@iki.fi>
194 * gui/gnash.cpp, utilities/: dumpshm.cpp,
195 processor.cpp, soldumper.cpp:
196 Use LC_ALL, not just LC_MESSAGES for localization.
199 2008-03-03 Sandro Santilli <strk@keybit.net>
201 * po/: Makefile.am, fi.po: back-port finnish translation addition.
203 2008-03-03 Sandro Santilli <strk@keybit.net>
205 * server/movie_root.cpp (doMouseDrag): drag bounds are in local
206 coordinate space, and non lock-centered drags must always
207 honour it. Fixes bug #22460.
208 * server/vm/ASHandlers.cpp (CommonGetURL): implement GET/POST
209 methods for targetted movie loads. Still missing POST using
210 host-provided uri handler (to improve/define communication
211 protocol for it) and POST for loadVariables.
213 2008-02-29 Sandro Santilli <strk@keybit.net>
215 * gui/Makefile.am: distribute klash.moc.in.
217 2008-02-28 Sandro Santilli <strk@keybit.net>
219 * server/parser/video_stream_def.{cpp,h}: fix build and runtime
220 with --disable-media.
222 2008-02-28 Sandro Santilli <strk@keybit.net>
224 * doc/C/usermanual/installation/feature_configuration.xml: update the
225 default media configuration.
226 * configure.ac: pretend --enable-media=gst was given by default, so we
227 don't fallback on ffmpeg, being still unstable.
229 2008-02-28 Sandro Santilli <strk@keybit.net>
231 * server/sprite_instance.cpp (stagePlacementCallback): don't queue
232 a LOAD event for the root movie for SWF versions up to 5.
233 * testsuite/swfdec/PASSING: root-onload-5.swf succeeds.
235 2008-02-28 Sandro Santilli <strk@keybit.net>
237 * testsuite/swfdec/PASSING: sync to swfdec master git.
239 2008-02-28 Sandro Santilli <strk@keybit.net>
241 * configure.ac: never attempt to use libmad, fallback to ffmpeg if
242 gstreamer is not supported and not explicitly requested.
243 * doc/C/usermanual/: glossary.xml, installation/configuration.xml,
244 installation/feature_configuration.xml: update dox about
245 --enable-media and mad.
247 2008-02-28 Sandro Santilli <strk@keybit.net>
249 * server/Property.{cpp,h}: drop left over debugging calls.
251 2008-02-27 Bastiaan Jacques <bastiaan@bjacques.org>
253 * libmedia/gst/gstflvdemux.h: Make extra sure our own FLV demuxer is
254 loaded in favor of a potentially system-installed one.
256 2008-02-27 Bastiaan Jacques <bastiaan@bjacques.org>
258 * libmedia/Makefile.am: Remove MediaDecoder* from the build, since
259 they are unused and unmaintained.
260 * libmedia/VideoDecoder.h: Revise the VideoDecoder interface, closely
261 modeled after that of VideoDecoderGst.
262 * libmedia/ffmpeg/VideoDecoderFfmpeg.{cpp,h}: Implement the new
263 VideoDecoder interface. This fixes embedded video.
264 * libmedia/gst/VideoDecoderGst.{cpp,h}: Update VideoDecoderGst to
265 match the new VideoDecoder interface.
266 * libmedia/ffmpeg/VideoDecoderFfmpeg.{cpp,h}: Cleanup; remove unused
267 methods and code. Avoid unnecessary memcpy calls. Tabs to spaces.
268 Fix up convertRGB24 so that it no longer touches the source frame
269 and enforce that with constness.
270 * server/parser/video_stream_def.{cpp,h}: Mutex-protect the video
271 frames vector, because video_stream_def's methods are called from
272 both the "loading thread" (parser) and the main execution thread
273 (rendering). Remove Gstreamer-specific calls and get rid of #ifdefs.
274 * server/asobj/NetStreamFfmpeg.cpp: Update to match the changes to
277 2008-02-27 Sandro Santilli <strk@keybit.net>
279 * testsuite/swfdec/PASSING: prototype-addProperty-6.swf
281 * server/Property.{cpp,h}: don't go into an infinite loop
282 if a getter or setter gets or sets the member it targets.
284 * testsuite/actionscript.all/Object.as: add test for recursive
285 getter/setter. Gnash fails at NOT protecting from infinite
286 recursion non-trival call graphs in SWF7+ (but is compatible
287 with SWF6 in that reguard).
289 2008-02-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
291 * libbase/config.cpp: drop unused file.
292 * libbase/Makefile.am: drop config.cpp.
294 2008-02-27 Sandro Santilli <strk@keybit.net>
296 * plugin/plugin.cpp: don't force verbosity, the config file can
299 2008-02-27 Marcin Cieślak <saper@saper.info>
301 * plugin/plugin.cpp: GIOCondition is a bitfield. Patch #6436.
303 2008-02-25 Sandro Santilli <strk@keybit.net>
305 * server/swf/tag_loaders.cpp (sound_stream_head_loader): turn that
306 annoying "No samples advertised" error to a debugging message.
307 Whoever will take care of that will do it in head.
308 * configure.ac: don't complain if high-level scripts for doc
309 generations aren't available as long as lower-level ones are.
310 Fixes bug reported in comment #12 of bug #22343.
311 * testsuite/libamf.all/test_lc.cpp: don't assume (void*) is 32-bit,
312 remove unneeded casts, fix missing return warnings. Should fix bug
314 * libmedia/sdl: removed unused code.
316 2008-02-24 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
318 * server/character.cpp: make sure all static const data members
319 are defined outside the class declaration.
321 2008-02-23 Sean McNamara <smcnam@gmail.com>
323 * server/asob/SoundGst.cpp: Use the new GstUtil for obtaining an
326 2008-02-22 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
328 * po/Makefile.am: add Swedish translation.
330 2008-02-22 Bastiaan Jacques <bastiaan@bjacques.org>
332 * libmedia/gst/VideoDecoderGst.cpp: Be more verbose about a missing
335 2008-02-22 Sandro Santilli <strk@keybit.net>
337 * testsuite/MovieTester.cpp: don't use log_debug for test
338 results, or they might never come out.
340 2008-02-22 Markus Gothe <nietzsche@lysator.liu.se>
342 * gui/gnash.cpp: Changed 2007 -> 2008.
344 2008-02-22 Sandro Santilli <strk@keybit.net>
346 * extensions/fileio/Makefile.am: don't try to build the
347 test if deps are not met (Ming).
348 * libmedia/Makefile.am: we don't support libmad anymore.
350 2008-02-22 Hong Yu <hongyu@emsoftltd.com>
352 * configure.ac, gui/Makefile.am, libmedia/Makefile.am,
353 libmedia/sound_handler.h, libmedia/ffmpeg/AudioDecoderFfmpeg.cpp,
354 libmedia/ffmpeg/AudioDecoderFfmpeg.h,
355 libmedia/ffmpeg/VideoDecoderFfmpeg.cpp,
356 libmedia/ffmpeg/VideoDecoderFfmpeg.h,
357 libmedia/ffmpeg/ffmpegNetStreamUtil.cpp,
358 libmedia/ffmpeg/ffmpegNetStreamUtil.h,
359 libmedia/ffmpeg/sound_handler_sdl.cpp,
360 libmedia/ffmpeg/sound_handler_sdl.h,
361 po/Makefile.am, pythonmodule/Makefile.am,
362 server/Makefile.am, server/asobj/Makefile.am,
363 server/asobj/NetConnection.cpp, server/asobj/NetConnection.h,
364 server/asobj/NetStreamFfmpeg.cpp, server/asobj/NetStreamFfmpeg.h,
365 server/parser/Makefile.am, server/parser/video_stream_def.cpp,
366 server/parser/video_stream_def.h, server/vm/Makefile.am,
367 utilities/Makefile.am:
368 Re-enable ffmpeg backend option.
370 2008-02-22 Sandro Santilli <strk@keybit.net>
372 * cygnal/cygnal.cpp: don't call LogFile::openLog explicitly,
373 it should be done automatically now.
374 * libbase/log.{cpp,h}: don't open a log file if not needed
377 2008-02-22 Rob Savoye <rob@ute.welcomehome.org>
379 * libamf/amf.cpp: Eliminate warnings.
380 * libamf/lcshm.cpp: Delete[] tmp, not ptr. Return ptr.
382 2008-02-21 Rob Savoye <rob@ute.welcomehome.org>
384 * macros/docbook.m4: Don't use the POSIX shell wrappers for the
385 Docbook2X utilities, only use the perl versions. If we can't find
386 usable wrappers, then drop back to using the lower level tools
389 2008-02-22 Sandro Santilli <strk@keybit.net>
391 * testsuite/libamf.all/test_sol.cpp: use getSOLSafeDir for writing
393 * Makefile.am: don't list 'doc' subdir twice in DIST_SUBDIRS.
395 2008-02-21 Sandro Santilli <strk@keybit.net>
397 * testsuite/misc-swfmill.all/Makefile.am: drop unneeded references
398 to the Dejagnu.swf file.
399 * Makefile.am, configure.ac, packaging/Makefile.am,
400 packaging/debian/Makefile.am, packaging/doc/Makefile.am,
401 packaging/ipkg/Makefile.am, packaging/redhat/Makefile.am:
402 fine-tune Makefile.ams, gets distcheck a further.
404 2008-02-21 Bastiaan Jacques <bastiaan@bjacques.org>
406 * libmedia/gst/gstflvparse.c: Always send a GstMessage when a function
407 is encountered (not just for onMetaData). Store the function name in a
409 * server/asobj/NetStream.{cpp,h}: Change onMetaData to be generic for
410 any function called from an FLV.
411 * server/asobj/NetStreamGst.cpp: Parse out the function name and call
412 processNotify with the remainder of the tag.
414 2008-02-21 Sandro Santilli <strk@keybit.net>
416 * testsuite/misc-ming.all/Makefile.am: don't try to build
417 PrototypeEventListenersTest.swf if Ming version doesn't support it.
418 * configure.ac: set version to 0.8.2
419 * po/{cs,de,es,fr,it}.po: update-po
421 2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>
423 * gui/gtk.cpp: Reinstate a call to prepDrawingArea that was removed by
426 2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>
428 * libbase/rc.{cpp,h}: Add a configuration item for the gstreamer
429 audiosink. It is possible to use a pipeline in the configuration
430 option similar to gst-launch. Implementation by Sean McNamara
431 <smcnam@gmail.com> (committed with some small modifications).
432 * libmedia/gst/GstUtil.{cpp,h}: Static Gstreamer utility class.
433 * libmedia/gst/SoundGst.cpp: Use the configuration audio output
435 * server/asobj/NetStreamGst.cpp: Likewise, and don't attempt to load
436 the flvdemux element, since it's loaded statically.
437 * libmedia/gst/gstflvdemux.c: Make sure that the element name doesn't
438 conflict with an existing flvdemux.
439 * libmedia/gst/gnash_gst_version.h: Utility macros for dealing with
440 Gstreamer versions. Unused for now.
442 2008-02-20 Sandro Santilli <strk@keybit.net>
444 * server/vm/ASHandlers.cpp (CommonGetUrl): revert the
445 loadVariables/targetLoad flags handling, as it broke
446 uptoten.com. Will do better research after release..
448 2008-02-20 Sandro Santilli <strk@keybit.net>
450 * server/vm/ASHandlers.cpp (ActionImplementsOp): better logging,
452 * server/vm/ASHandlers.cpp (CommonGetUrl): only loadVariables if
453 targetLoad flag is set (tested). Log an SWF error if loadVariables
454 is set but targtLoad is clear.
456 2008-02-20 Bastiaan Jacques <bastiaan@bjacques.org>
458 * server/parser/video_stream_def.cpp: Don't make a fuss about embedded
459 video definitions without a real codec or video data, because they are
460 frequently (or perhaps always) used as to place NetStream videos on
463 2008-02-20 Sandro Santilli <strk@keybit.net>
465 * server/: gnash.h, impl.cpp: add an additional optional
466 argument to create_movie and create_library_movie to
468 * server/movie_root.{cpp,h}: change loadMovie interface to
469 take an optional POST data string.
470 * server/sprite_instance.{cpp,h}: extend ::loadMovie to
471 take an aptional POST data string, fix MovieClip.loadMovie
472 to honour second argument [GET/POST].
474 2008-02-20 Rob Savoye <rob@ripple.welcomehome.org>
476 * testsuite/libamf.all/test_lc.cpp: Don't try a bogus test for
477 findListeners() for now. The code works, but the test case is
480 * configure.ac: Don't build C/asspec/Makefile, it's never been
481 used anyway. Use new variables for testing if paths were found.
483 2008-02-20 Sandro Santilli <strk@keybit.net>
485 * doc/C/gnash.xml, doc/C/usermanual/installation/configuration.xml:
486 docbook2texi complained about an underscore in an entity name,
487 so renamed 'cross_compiling' to 'crosscompiling'.
489 2008-02-20 Sandro Santilli <strk@keybit.net>
491 * doc/C/fdl-appendix.xml: in DocBook 4.0, docinfo tag was
492 replaced with appendixinfo (in an appendix context).
494 http://www.museum.state.il.us/ismdepts/library/linuxguides/docbook/docinfo.html.
495 * doc/C/app_authors.xml: copy 'Ignacio Casta�o' name from
496 gameswf sources (seems to be better accepted by docbook2pdf).
497 * doc/C/amf.xml, doc/C/rtmp.xml: use appropriate sect levels
498 matching with inclusion of entities.
499 * doc/C/usermanual/usage.xml: fix mismatch in <row> tag nesting.
501 2008-02-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
503 * libbase/log.{cpp,h}: General cleanup: pass strings by const
504 reference. Drop overloaded operators for LogFile class in favour
505 of the template that was already there. Remove unused Verbose class.
506 Comment out apparently unused but possible useful methods
507 getEntry() and getState(). Drop unused variables. Write the same
508 to stdout as to logfile; move filtering of debug messages to the
509 logging functions. Add but comment out new boost::format logging
512 2008-02-19 Rob Savoye <rob@ute.welcomehome.org>
514 * doc/C/gnash.xml: Beat back into a semblance of shape. Still
515 needs massive work, but at least the chapters are in order.
517 2008-02-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
519 * libbase/log.{h,cpp}: drop log_msg.
520 * everywhere: replace unspecific log_msg with appropriate log call;
521 mainly log_debug but occasionally error, parse or security.
523 2008-02-19 Rob Savoye <rob@ripple.welcomehome.org>
525 * doc/C/Makefile.am: Use newer wrappers for docbook2x tools
526 instead of the old two step process.
527 * macros/docbook.m4: Look for alternate names for docbook
528 utlities. Find docbook2pdf. Fix automake conditionals.
530 2008-02-19 Rob Savoye <rob@ripple.welcomehome.org>
532 * macros/docbook.m4: Look for the scripts with a .pl extension if
533 they aren't found, as Gentoo renamed these programs.
535 * doc/C/Makefile.am: Build Cygnal man page too.
537 2008-02-19 Sandro Santilli <strk@keybit.net>
539 * testsuite/swfdec/gen_run_swfdec_testsuite.sh: fix sending of
540 custom flags to swfdec_gnash_tester.
541 * testsuite/swfdec/swfdec_gnash_tester: print actual command
542 invocation to stderr.
543 * testsuite/simple.exp: reset the timeout on parsing NOTE or
544 swfdec testsuite will run longer then 600 seconds..
545 * testsuite/swfdec/REALTIME: add netstream-onmetadata.swf
547 2008-02-19 Sandro Santilli <strk@keybit.net>
549 * server/as_value.{cpp,h}: add optional second argument
550 to doubleToString static method, to specify a base
552 * server/asobj/Number.cpp: implement Number.toString(<radix>).
553 * testsuite/actionscript.all/Number.as: successes.
554 * testsuite/swfdec/PASSING: successes.
556 2008-02-19 Sandro Santilli <strk@keybit.net>
558 * testsuite/actionscript.all/Number.as: add test for toString(<radix>)
560 2008-02-19 Sandro Santilli <strk@keybit.net>
562 * server/asobj/Number.cpp: log UNIMPLEMENTED for
563 Number.toString(<radix>)
564 * server/asobj/xml.{cpp,h}: fix getBytesLoaded/Total to return
565 undefined when nothing was loaded (reguardless of the .loaded
567 * libbase/rc.{cpp,h}: return as soon as directive matches
568 pattern while parsing 'set' lines.
569 * testsuite/libamf.all/Makefile.am: set GNASHRC to use
570 testsuite-specific configuration.
572 2008-02-18 Rob Savoye <rob@ute.welcomehome.org>
574 * doc/glossary.xml: Add id tags to all glossdivs.
576 * doc/C/cygnal-man.xml: New manpage for Cygnal.
577 * doc/C/Makefile.am: Build Cygnal manpage too.
579 2008-02-19 Sandro Santilli <strk@keybit.net>
581 * gui/Player.cpp: don't remove the logfile if not enabled.
582 * gui/gnash.cpp: set write log to rcfile, not directly on the
583 LogFile (handling of -w). This is to cope with Player class
584 way of initializing log file.
585 * libbase/rc.cpp: don't use log_XXX during construction, as
586 those will need a constructed RcInitFile to work properly.
587 * libbase/log.cpp: get "write log" option from RcFile.
588 Fixes forced logfile writing from gprocessor, and should
589 make Player handling of the flag obsoleted.
591 2008-02-18 Sandro Santilli <strk@keybit.net>
593 * testsuite/gnashrc.in: disable writing to the logfile..
594 * server/asobj/xml.{cpp,h}: better compatibility:
595 return undefined from XML.getBytesTotal() when not
596 loading, return last-load info when load ends.
598 2008-02-18 Sandro Santilli <strk@keybit.net>
600 * libbase/LoadThread.cpp: update _streamSize on eof, as the
601 http-advertised stream size can't be relied upon.
603 2008-02-18 Russ Nelson <nelson@crynwr.com>
605 * libmedia/gst/VideoDecoderGst.cpp
606 * When a movie is going to stream video, it creates DEFINEVIDEOSTREAM
607 with a codec id of zero. That currently generates an ERROR when it
608 only means that the real video will be streamed later. Instead,
610 * Change the wording to make it clear that it's codec #0, send it
611 to log_debug(), and nuke the pipeline.
613 2008-02-18 Sandro Santilli <strk@keybit.net>
615 * server/parser/video_stream_def.cpp (readDefineVideoStream): fix
616 ensureBytes call [was 1 byte short].
617 * server/asobj/xml.{cpp,h}: second attempt at XML.sendAndLoad.
618 This time is a bit more tested.
620 2008-02-17 Sandro Santilli <strk@keybit.net>
622 * server/asobj/xml.{cpp,h}: implement XML.sendAndLoad (untested).
625 2008-02-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
627 * gui/gtk.cpp: add mnemonics to menu bar for accessibility.
628 * po/gnash.pot: updated pot file.
629 * po/de.po: updated translation.
631 2008-02-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
633 * server/stream.cpp: throw parser exception if asked to read more than
634 32 bits, assert only to prevent buffer overflow. Fixes bug #22319.
636 2008-02-16 Rob Savoye <rob@ripple.welcomehome.org>
638 * gui/Makefile.am: Add GLIB_CFLAGS. Install shell with
640 * gui/am-frag/gtk.am: Include X11_CFLAGS to keep NetBSD happy.
641 * pugin/Makefile.am: Include X11_CFLAGS to keep NetBSD happy.
642 * plugin/klash/Makefile.am: Include X11_CFLAGS to keep NetBSD
644 * gui/gnash.in: Update copyright.
646 * macros/boost.m4: The serialization is optional, not required.
647 * macros/pthread.m4: Match all BSD hosts when setting flags.
649 * Makefile.am: Always recurse into doc.
651 * doc/C/Makefile.am: Fix typo, one $ not two for make
652 variables. Link to directories if we're in a build tree so
653 including images and other xml pages actually works. Link to
654 default output files if the Docbook tools aren't installed.
655 * doc/C/dumpshm-man.xml, gnash-man.xml, gprocessor-man.xml,
656 soldumper-man.xml: Remove old names, their suffix has changed to
659 * server/edit_text_character.h, character.h: Put virtual before
660 the return type to eliminate a warning,
661 * packaging/install-gnash.sh: Drop GPL part, make uninstall work
662 correctly. Fix install path to use /usr/lib so we don't have to
665 * packaging/snapshot.am: Set the name higher up so we don't have
666 to add "cvs" everywhere for the snapshot version. Build the
667 tarball with the correct path. Don't bail om some errors, they're
668 normal on some platforms. Add host_os to the tarball name.
670 * doc/C/dumpshm-man.xml, gprocessor-man.xml, soldumper-man.xml,
671 gnash-man.xml: Rename all man page source to *.man-xml so we can
672 use a SUFFIX rule for transformations.
673 * doc/C/Makefile.am: Build manpages using a SUFFIX rule. Cleanup
674 how manpages get installed so it works when building packages.
675 * packaging/doc: New directory to hold prebuilt docs for packaging
676 on braindead systems without a working Docbook2X.
678 * packaging/doc/actionscript.info.in, dumpshm.1.in, gnash.1.in,
679 gnash.html.in, gnash.info.in, gprocessor.1.in, soldumper.1.in:
680 Prebuilt docs, only used for building binary packages on systems
681 without Docbook2X support.
683 2008-02-16 Sandro Santilli <strk@keybit.net>
685 * server/vm/ASHandlers.cpp (ActionInitArray): use as_value::to_int
686 to get array size. Fixes bug #22318.
688 2008-02-16 Sandro Santilli <strk@keybit.net>
690 * testsuite/swfdec/: README, REALTIME,
691 gen_run_swfdec_testsuite.sh, swfdec_gnash_tester:
692 Add support for running certain testcases at
693 nominal FPS speed, to make test results more stable.
695 2008-02-15 Sandro Santilli <strk@keybit.net>
697 * libbase/URL.cpp: rewrite parse_querystring using
698 boost::tokenizer, fixing the new test.
699 * testsuite/libbase/URLTest.cpp: new tests fixed.
701 2008-02-15 Rob Savoye <rob@ripple.welcomehome.org>
703 * doc/C/Makefile.am: If the docbook tools don't exist.use a stored
704 copy of the final output file. While this is a bit tacky, it helps
705 when building binary packages on systems where the DocBook tools
706 don't work correctly. Potentially old docs are better than none.
707 * doc/C/{dumpshm.1,gnash.info, soldumper.1, actionscript.html,
708 gnash.1, gnash.texi, actionscript.texi, gnash.html.in
709 gprocessor.1: Copies of prebuilt documentation. This gives one
710 working documentaion regalrdless of whether they have the Docbook
711 tools installs. Useful for building binary packages.
713 * macros/glib.m4: Add extra glib for include path, and drop the
714 extra glib for the glibconfig.h include path. This let's Gnash
716 * server/as_value.cpp: Use finite if isfinite doesn't exist. Fixes
717 FreeBSD build problem.
718 * libbase/FLVParser.cpp: Include string and iofwd, and add std
719 namespace to fix generic BSD build problem.
721 2008-02-15 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
723 * server/parser/button_character_def.cpp: use ensureBytes, fix more
726 2008-02-15 Sandro Santilli <strk@keybit.net>
728 * testsuite/libbase/URLTest.cpp: failing test for url-decoding.
729 * server/as_object.{cpp,h}: add getURLEncodedVariables method.
730 * server/sprite_instance.cpp (loadVariables): delegate vars
731 url-encoding to the new specialized method.
733 2008-02-15 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
735 * server/swf/tag_loaders.cpp: (define_bits_lossless_2_loader) log
736 malformed SWF error and return if height or width is 0 (prevents
737 assertion failure in image.cpp (rgba).
738 * server/swf/PlaceObject2Tag.cpp: use ensureBytes, fix more assertion
739 failures on malformed SWFs.
740 * server/parser/text_character_def.cpp: add a missing ensureBytes.
742 2008-02-15 Sandro Santilli <strk@keybit.net>
744 * server/parser/sprite_definition.cpp: handle END tags before
745 advertised end offset of a DEFINESPRITE tag.
747 2008-02-15 Sandro Santilli <strk@keybit.net>
749 * testsuite/swfdec/swfdec_gnash_tester: accept a second argument
750 to specify additional flags. Currently unused by might get
751 handy to augment sleep time for some load to be more likely
753 * utilities/processor.cpp: don't forget to sleep between stage
754 placement and first advance. Fixes instable results with
755 swfdec's loadvariable* testcases.
757 2008-02-14 Sandro Santilli <strk@keybit.net>
759 * server/asobj/MovieClipLoader.cpp (loadClip): fetch bytes
760 loaded/total from the loaded clip, not the replaced one.
761 * server/as_value.cpp (to_string): movieclips oughta evaluate
762 to the empty string only if dangling and not rebound.
763 * testsuite/actionscript.all/MovieClipLoader.as: test that rebound
764 soft refs convert to non-empty string.
766 2008-02-14 Sandro Santilli <strk@keybit.net>
768 * server/parser/BitmapMovieDefinition.h: advertise one frame loaded,
769 fixes last failure in loadMovieTest.swf.
770 * server/sprite_instance.cpp (loadMovie): copy clip-events to loaded
771 movie. Fixes loadMovieTest.swf.
772 * testsuite/misc-ming.all/: loadMovieTest.c, loadMovieTestRunner.cpp:
773 Test that clip event handlers defined for a clip are copied to
774 movies loaded into them. Improve the test runner to follow
775 instructions of the self-contained one and add consistency checking
776 (failing with Gnash, I'm working to fix it).
779 2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
781 * server/stream.cpp: also check for overflow of a signed int to keep
784 2008-02-14 Sandro Santilli <strk@keybit.net>
786 * server/parser/BitmapMovieDefinition.{cpp,h}:
787 Implement getBytesLoaded/getBytesTotal for loaded bitmaps
788 (not 100% correct but fixing real-world movies).
790 http://www.veritaserum.com/flashgames/jp/puzzledharry/puzzled-harry.swf
792 2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
794 * server/stream.cpp: throw parser exception in stream::open_tag() if
795 reported tag length is negative. Fixes assertion failures in
798 2008-02-14 Rob Savoye <rob@ripple.welcomehome.org>
800 * utilities/dumpshm.cpp: Use struct shmid_ds instead of the
801 depreciated shminfo, so this works on *BSD.
803 2008-02-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
805 * gui/gtk{sup.h,.cpp}: set up key event callbacks on the toplevel
806 window after drawing area has been reparented. The new
807 setupWindowEvents() function splits off those functions to save
808 resetting other callbacks unnecessarily. Makes key events
809 work in the fullscreen plugin.
810 * server/asobj/xml.{cpp,h}: fix small leak of xmlChar when the node
811 is empty. Replace reinterpret_cast<>s with nice, safe, null-terminated
812 stringstreams. Comment out some questionable headers.
814 2008-02-14 Sandro Santilli <strk@keybit.net>
816 * server/sprite_instance.cpp (on_event): reword the onLoad handling so
817 that sprites with a registered class won't skip the user-defined
818 handler. Fixes the new tests in registerClassTest2.c and one of the
819 bugs exposed by FlowPlayer.
820 * testsuite/misc-ming.all/registerClassTest2.c: expect failures in
821 order of execution of the onLoad handlers (this might be the reason
822 for the overly complex handling of onLoad handler in current gnash).
824 2008-02-14 Sandro Santilli <strk@keybit.net>
826 * testsuite/misc-ming.all/registerClassTest2.c: test that user-defined
827 onLoad handler is still invoked if no clip events are defined and
828 the object is not dynamic (placed by onClipEvent).
830 2008-02-14 Sandro Santilli <strk@keybit.net>
832 * server/sprite_instance.cpp (on_event): still look for a user-defined
833 onLoad handler if the sprite is dynamic. Fixes latest testcase, but
834 not FlowPlayer yet (which was the inspiration for the previous
836 * testsuite/misc-ming.all/registerClassTest.c: test that used-defined
837 onLoad should be called when available for dynamic clips placed
838 by attachMovie (even when 'clip' event flags are all zero..).
840 2008-02-13 Sandro Santilli <strk@keybit.net>
842 * server/sprite_instance.{cpp,h}: always register as a key and mouse
843 listener, not relying on equipment of a known handler (as that would
844 miss prototype assignments).
845 * testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp: fix
848 2008-02-13 Sandro Santilli <strk@keybit.net>
850 * testsuite/misc-ming.all/Makefile.am: enable test
851 PrototypeEventListenersTestRunner
853 2008-02-13 Sandro Santilli <strk@keybit.net>
855 * testsuite/actionscript.all/with.as: use ASM for setTarget in
856 with() blocks, or Ming 0.4.0.beta6 would consider it a function
857 call (as done by the official ide, so "correctly").
858 * testsuite/actionscript.all/targetPath.as: AS targetPath doesn't
859 change in Ming 0.4.0.beta6, just the ASM label.
861 2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
863 * testsuite/misc-ming.all/PrototypeEventListeners.as: more tests.
864 * testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp:
867 2008-02-13 Sandro Santilli <strk@keybit.net>
869 * doc/C/usermanual/usage.xml: document the new -F switch of gnash.
871 2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
873 * testsuite/misc-ming.all/PrototypeEventListeners.as: a few more
875 * testsuite/misc-ming.all/PrototypeEventListenersTestRunner.cpp:
876 automatic test runner.
877 * testsuite/misc-ming.all/Makefile.am: enable tests.
879 2008-02-13 Sandro Santilli <strk@keybit.net>
881 * server/asobj/SharedObject.cpp: fix intermediate directories
882 creation, while still failing if the SOLSafeDir doesn't exist.
883 Fixes one of the bugs in #22013.
885 2008-02-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
887 * testsuite/misc-ming.all/PrototypeEventListeners.as: test mouse
888 events on MovieClip prototypes.
890 2008-02-13 Sandro Santilli <strk@keybit.net>
892 * server/asobj/SharedObject.cpp (flush): check return code from
894 * libamf/sol.cpp (writeFile): check ostream operations.
895 * testsuite/actionscript.all/SharedObject.as: add a few more tests
896 and expect the current failures.
898 2008-02-13 Sandro Santilli <strk@keybit.net>
900 * testsuite/misc-ming.all/Makefile.am: instanceNameTestRunner
901 is a _SCRIPT, not a _PROGRAM.
903 2008-02-12 Rob Savoye <rob@ute.welcomehome.org>
905 * plugin/klash/Makefile.am: Test permissions before trying to
906 install. Install services from srcdir.
908 * packaging/debian/gnash-dev.dirs, gnash-dev.install: Don't build
909 dev packages, Gnash's internal APIs change to fast.
910 * packaging/debian/gnash-klash.install: Install kde-gnash, not
912 * packaging/debian/changelog: Update.
913 * packaging/debian/control: Drop gnash-dev.
915 * utilities/Makefile.am: Add INTLLIB, and actually use
917 * utilities/dumpshm.cpp: Drop unused support for accessing POSIX
918 memory as raw files. Normalize output so some things work without
919 -v. Add --version option. Re move unused options left from prior
921 * utilities/processor.cpp: Use printf instead of log_msg for
922 --version so we can always see it.
923 * utilities/soldumper.cpp: Add support for --help and --version
924 per GNU standards. Use printf instead of log_msg for --version so
925 we can always see it. Use cout instead of log_msg for all outout
926 so we don't contaminate the main log file.
928 * doc/C/dumpshm-man.xml, gprocessor-man.xml, soldumper-man.xml:
929 New man pages for utilities.
930 * doc/C/asspec/asspec.xml: Update contact info and version.
931 * doc/C/asspec/asspec-C.omf: Update contact info and version.
932 * doc/C/asspec/Makefile.am: Add new manpages.
933 * doc/C/gnash.xml: Update contact info and version.
935 2008-02-12 Sandro Santilli <strk@keybit.net>
937 * testsuite/misc-ming.all/Makefile.am: enable the new
938 instanceNameTestRunner test.
939 * server/sprite_instance.{cpp,h}: take a pointer to string in
940 add_display_object and replace_display_object, so that NULL gets
941 back to having a meaning.
942 * server/swf/PlaceObject2Tag.{cpp,h}: pass NULL to add_display_object
943 and replace_display_object if a name wasn't specified by user.
945 2008-02-12 Sandro Santilli <strk@keybit.net>
947 * testsuite/gnashrc.in: force sound enabled.
949 2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
951 * server/character.h: take const std::string& for set_name.
952 * server/sprite_instance.{cpp,h}: use const std::string& instead of
953 const char* for display_object functions.
954 * server/swf/tag_loaders.cpp: already no need to pass c strings to
956 * server/swf/PlaceObject2Tag.cpp: don't use c_str().
958 2008-02-12 Sandro Santilli <strk@keybit.net>
960 * testsuite/misc-ming.all/: Makefile.am, instanceNameTest.c:
961 Add a test showing that NO name is different then EMPTY name
962 in a PlaceObject tag (previous Ben's patch broke this).
964 2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
966 * server/character.h: take const std::string& for set_name.
967 * server/sprite_instance.{cpp,h}: use const std::string& instead of
968 const char* for display_object functions.
969 * server/swf/tag_loaders.cpp: already no need to pass c strings to
971 * server/swf/PlaceObject2Tag.cpp: don't use c_str().
973 2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
975 * server/stream.{cpp,h}: drop buggy char* read_string()
976 and (unused) char* read_string_with_length(...), which sometimes
977 returned NULL causing a parser exception. Fixes parsing of
978 http://www.e4.com/reaper/games/soulslapper/flas/main.swf (SWF9)
980 * server/swf/tag_loaders.cpp: use read_string (std::string& to)
982 * server/swf/PlaceObject2Tag.{cpp,h}: use std::string, not char* for
984 * server/parser/shape_character_def.cpp: bring indentation into
987 2008-02-12 Sandro Santilli <strk@keybit.net>
989 * server/asobj/MovieClipLoader.cpp: send the onLoadInit event
990 at the correct time (after actions in first frame of loaded resource
993 2008-02-12 Sandro Santilli <strk@keybit.net>
995 * server/parser/button_character_def.{cpp,h}: properly parse button
996 records with filters and blend mode. Fixes bug #22094.
998 2008-02-12 Sandro Santilli <strk@keybit.net>
1000 * server/parser/button_character_def.cpp: print state info for
1001 button records (debuggin).
1003 2008-02-12 Bastiaan Jacques <bastiaan@bjacques.org>
1005 * libmedia/gst/SoundGst.cpp: Use the right scale for volume (0-1, not
1008 2008-02-12 Sandro Santilli <strk@keybit.net>
1010 * server/sprite_instance.cpp: drop "invisible mask in MouseEntityFinder"
1011 FIXME message (nothing to fix).
1013 2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1015 * server/parser/shape_character_def.cpp: add some checks I missed last
1018 2008-02-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1020 * server/parser/shape_character_def.cpp: add ensureBytes/Bits checking
1021 to fix assertion failures with malformed SWFs. Fixes bug #22288.
1023 2008-02-12 Sandro Santilli <strk@keybit.net>
1025 * server/edit_text_character.{cpp,h}: use instance setting for
1026 "readonly", not definition one. Allows dynamically-created
1027 TextFields to be used as input ones.
1029 2008-02-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1031 * server/parser/edit_text_character_def.cpp: use ensureBytes checking,
1032 fixes some zzuf assertion failures.
1033 * server/parser/text_character_def.cpp: use ensureBytes checking.
1035 2008-02-11 Udo Giacomozzi <udo.gnu@nova-sys.net>
1037 * server/button_character_instance.cpp, server/edit_text_character.cpp,
1038 server/sprite_instance.cpp, server/video_stream_instance.cpp,
1039 server/character.h: drop XXX_display_callback methods
1040 * server/dlist.cpp: generally check characters bounds before calling it's
1042 * server/generic_character.cpp, server/edit_text_character.cpp,
1043 server/sprite_instance.cpp: don't check boundsInClippingArea() as it is
1044 done in DisplayList now
1046 2008-02-11 Sandro Santilli <strk@keybit.net>
1048 * server/asobj/Stage.cpp: warn only once about unimplemented calls.
1050 2008-02-11 Udo Giacomozzi <udo.gnu@nova-sys.net>
1052 * server/character.{cpp,h}: new boundsInClippingArea() function
1053 * server/generic_character.{cpp,h}: move display() implementation to .cpp
1054 file and add call to boundsInClippingArea()
1055 * server/edit_text_character.cpp: add call to boundsInClippingArea()
1056 * server/sprite_instance.cpp: remove clipping check using
1057 add_invalidated_bounds and do simple (single) bounds check instead
1059 2008-02-11 Sandro Santilli <strk@keybit.net>
1061 * testsuite/actionscript.all/MovieClipLoader.as: test 'this' in
1062 onLoadInit callback.
1064 2008-02-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1066 * libbase/rc.{h,cpp}: use boost/cstdint for uint32_t. Cast SHM key
1067 to key_t only at return. Use 'splashScreen', not splash_screen in
1068 the rcfile for naming consistency. It's as yet unused, so shouldn't
1070 * testsuite/libbase/gnashrc.in: change test to use splashScreen.
1072 2008-02-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1074 * gui/gtk.cpp: Don't use is_muted() to set the 'Sound' menu toggle,
1075 as the function seems to have changed.
1076 * libbase/rc.cpp: Fix a nice buffer overrun arising from long
1077 comments in the rcfile.
1079 2008-02-10 Bastiaan Jacques <bastiaan@bjacques.org>
1081 * libamf/sol.cpp: in writeFile, allocate enough space to account
1082 for two padding bytes, which are written depending on the AMF element
1083 type. Fixes bug #22188.
1085 2008-02-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1087 * server/sprite_instance.cpp, server/movie_root.cpp: const correct
1089 * server/asobj/LoadVars.cpp: ditto.
1090 * libbase/utf8.h: make comments more Doxygen-friendly.
1092 2008-02-09 Rob Savoye <rob@ripple.welcomehome.org>
1094 * configure.ac: Add a --enable-allstatic option to produced a
1095 dynamically linked Gnash, but with dependant librairies statically
1096 linked in. This reduces dependancy problems for binary tarballs,
1097 plus the plugins still build as shared libs still.
1098 * utilities/Makefile.am: Wrap our dependant libraries with
1099 --static and -shared to force static linking if --enable-allstatic
1101 * gui/Makefile.am: Wrap our dependant libraries with --static and
1102 -shared to force static linking if --enable-allstatic is
1105 * packaging/install-gnash.sh: Install everything correctly.
1106 * packaging/snapshot.am: Fix rules to build binary tarballs
1107 correctly. Add snapshot-rpm target that builds an rpm which is
1108 properly cvs date stamped.
1109 * packaging/redhat/gnash.spec: Update to work with cvs HEAD.
1111 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1113 * libmedia/sound_handler.h: Add a few notes.
1114 * libmedia/gst/SoundHandlerGst.{h,cpp}: Make SoundHandlerGst thread
1115 safe, because the "loading thread" will call at least create_sound.
1116 Since most methods in the class merely call a SoundGst method,
1117 introduce a set of member template functions that will a) make these
1118 operations thread safe, b) replace the RV_IF_BAD_HANDLE-style macros
1119 and c) save typing. Fixes bug #22264.
1121 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1123 * libmedia/gst/SoundGst.cpp: Use mp3parse only if it's available,
1124 for instance in the absence of plugins-ugly.
1126 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1128 * libmedia/gst/SoundGst.cpp: Make sure source and sink pad
1129 actually reflect their names on the bin used for mp3parse.
1131 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1133 * libmedia/gst/SoundGst.cpp: Shuffle linking order so that
1134 volume will happen after conversion.
1136 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1138 * libmedia/gst/SoundGst.cpp: Disable the seeking assistant
1139 mp3parse module for now. Add a small amount of error output.
1141 2008-02-09 Sandro Santilli <strk@keybit.net>
1143 * testsuite/misc-ming.all/loadMovieTest.c: check that
1144 getBytesLoaded/Total for static sprites should not proxy
1145 to the root movie def.
1146 * libmedia/gst/SoundHandlerGst.cpp (dtor): don't abort
1147 if destructed before the VM is initialized (gnash nonexistent
1148 will trigger that behaviour).
1150 2008-02-08 Sandro Santilli <strk@keybit.net>
1152 * server/movie_root.cpp (setRootMovie): cleanup display list
1153 after actions processing. Fixes bug #22258.
1154 * server/swf/tag_loaders.cpp (import_loader): read strings into
1155 a std::string rather then a temp newly allocated char[].
1156 (fixes attempts to construct a string from a null).
1158 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1160 * libmedia/gst/SoundGst.cpp: Fix typo.
1162 2008-02-08 Bastiaan Jacques <bastiaan@bjacques.org>
1164 * libmedia/gst/SoundHandlerGst.{h,cpp}: New Gstreamer sound_handler
1165 implementation. Manages SoundGst objects.
1166 * libmedia/gst/SoundGst{h,cpp}: Sound class representing a single
1168 * libmedia/gst/gstbuffersrc.{c,h}: Home-grown element derived from
1169 gstappsrc; it is a random-access element. Used for SoundGsts.
1170 * libmedia/AudioDecoderNellymoser.{cpp,h}: Add another decode()
1171 that returns floats, since Gstreamer can handle them.
1172 * libmedia/Makefile.am: Compile new files; stop compiling removed
1174 * libmedia/sound_handler.h: Drop unused (and evil)
1175 {att,de}tach_aux_streamer methods.
1176 * server/Makefile.am: Link in Gstreamer libs if requested.
1177 * server/asobj/NetStreamGst.cpp: Remove unused include.
1179 2008-02-08 Sandro Santilli <strk@keybit.net>
1181 * testsuite/misc-mtasc.all/level87.as, testsuite/swfdec/PASSING:
1182 Successes after the MovieClip.loadMovie fixes.
1184 2008-02-08 Sandro Santilli <strk@keybit.net>
1186 * server/movie_root.h: add TODO item in loadMovie method.
1187 * server/sprite_instance.cpp (sprite_load_movie): queue the
1188 load request using movie_root::loadMovie. Fixes a bug
1189 loading in removed or aliased sprites (expected behaviour
1190 is we load to a string target, with late evaluation of it).
1191 * server/asobj/: LoadVars.cpp, xml.cpp: don't forget to clear
1192 the internal timer on destruction.
1194 2008-02-08 Sandro Santilli <strk@keybit.net>
1196 * server/sprite_instance.cpp (on_event): skip seeking for user-defined
1197 onLoad handler only if all all clip events (not just the onLoad one)
1200 2008-02-07 Rob Savoye <rob@ripple.welcomehome.org>
1202 * packaging/install-gnash.sh: Add file finding function, so we
1203 work correctly with the bug in Ubuntu's bash shell.
1205 2008-02-07 Sandro Santilli <strk@keybit.net>
1207 * server/edit_text_character.cpp: get default type (input/dynamic)
1208 from definition (readonly flag).
1209 * server/parser/edit_text_character_def.h: be readonly by default,
1210 statically defined textfield will always set this flag explicitly.
1211 * testsuite/misc-ming.all/DefineEditTextTest.c: test the 'type'
1212 parameter of statically defined textfields.
1214 2008-02-07 Sandro Santilli <strk@keybit.net>
1216 * server/edit_text_character.{cpp,h}: add support for
1218 * testsuite/actionscript.all/TextField.as: additional test
1219 for TextField.type, fix a test for textWidth.
1221 2008-02-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1223 * libbase/utf8.h: document utf8 code.
1224 * server/edit_text_character.cpp: add comments, drop pointless
1227 2008-02-07 Sandro Santilli <strk@keybit.net>
1229 * server/asobj/LoadVars.cpp: fix confusing message (loading XML..)
1230 * server/array.h: sort a list, not a deque. this makes
1231 invalid custom comparators less likely to invalidate
1232 iterators, fixing bug #22239.
1233 * testsuite/actionscript.all/array.as: update expected
1236 2008-02-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1238 * server/asobj/Key.{cpp,h}: clean up code. Take gnash::key::code when
1239 that's what's meant; drop unnecessary assertions; use std::bitset
1240 instead of custom bit array (this is C++, after all).
1242 2008-02-07 Sandro Santilli <strk@keybit.net>
1244 * testsuite/actionscript.all/array.as: make the test nicer with
1245 differnent sort() implementation (ie: don't change number of
1246 run tests based on number of calls to the custom comparator
1248 * testsuite/actionscript.all/String.as: fix a bogus test line,
1249 xcheck->check now succeeding tests, add the rcsid string.
1251 2008-02-06 Rob Savoye <rob@ripple.welcomehome.org>
1253 * packaging/install-gnash.sh: Add OpenBSD support, and hopefully
1256 * configure.ac: Don't look for mkinstalldirs on our own, it's
1259 * packaging/snapshot.am, alp.am, bsd.am, deb.am, ipkg.am, rpm.am:
1260 Makefile fragments moved out of the top level where it was getting
1261 too clutters with install abd packaging targets.
1262 * Makefile.am: Move all the packaging support to the .am files
1263 packaging. Include packaging in EXTRA_DIST.
1265 * packaging/install-gnash.sh: Install script for installting
1267 * extensions/launcher: New extension for launching application
1268 from a swf file. Very handy for a swf basd UI for mobile devices
1269 that use graphical menus.
1270 * extensions/launcher/launcher.cpp: Launcher support, which uses
1271 an MD5 checksum to make sure it only launches the application
1273 * extensions/launcher/launcher_ext.{cpp,h}: Wrappers for the
1275 * extensions/launcher/md5.{cpp,h}: md5 calculations.
1277 2008-02-06 Sandro Santilli <strk@keybit.net>
1279 * testsuite/actionscript.all/array.as: another insane test..
1281 2008-02-06 Sandro Santilli <strk@keybit.net>
1283 * server/array.h (sort): sort a copy of elements when using a custom
1284 function, to avoid the custom function invocations to mess with
1285 the container being scanned. Fixes a memory corruption that was
1286 triggered by just-added tests in array.as, but still doesn't fix
1287 bug #22239 (must be another such case).
1289 2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1291 * libbase/utf8.{cpp,h}: take SWF version argument, use ISO-8859
1292 encoding for SWF5 and below.
1293 * server/asobj/string.cpp: pass version information to utf encoding
1295 * server/edit_text_character.cpp: pass version information to encoding
1297 * server/vm/ASHandlers.cpp: pass version information, use ISO-8859
1298 encoding for SWF5 and below. Restores SWF5's inability to cope with
1299 UTF-8, passes swfdec testsuite again.
1301 2008-02-06 Sandro Santilli <strk@keybit.net>
1303 * testsuite/actionscript.all/array.as: add more crazy calls, in
1304 particular one matching the problem reported on bug #22239
1305 (blocker - working to fix this).
1307 2008-02-06 Sandro Santilli <strk@keybit.net>
1309 * testsuite/actionscript.all/array.as: add a couple of additional
1310 tests for sorting an array using a bogus custom function.
1311 * gui/kde.cpp, gui/kdesup.h: disable no-op movie control menu items
1312 (jump,step forward,back); add Refresh menu item.
1313 * gui/sdl_agg_glue.cpp: fix compiler warnings
1314 * testsuite/swfdec/PASSING: string-indexof and stringlength
1315 tests now succeed for swf > 5
1317 2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1319 * testsuite/actionscript.all/String.as: new failing tests for
1320 SWF5 string methods. Some chr() and ord() tests now pass.
1321 * server/vm/ASHandlers.cpp: SWF4 and 5 handle multi-byte characters
1323 * server/edit_text_character.cpp: use const reference.
1325 2008-02-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1327 * testsuite/actionscript.all/String.as: tests for chr() and
1330 2008-02-06 Sandro Santilli <strk@keybit.net>
1332 * libbase/string_table.cpp (insert_group): only lowercase
1333 the comparison key if case-insensitive.
1334 * server/namedStrings.{cpp,h}: drop PROP_COLOR named string
1335 as it would clash with the CLASS_COLOR one in case-insensitive
1336 runs. Fixes unstable evaluation of "color" labels.
1337 * server/textformat.cpp: don't use PROP_COLOR anymore (was dropped).
1339 2008-02-06 Sandro Santilli <strk@keybit.net>
1341 * testsuite/actionscript.all/case.as: add tests showing that
1342 the current case-insensitive string_table comparison is
1343 conceptually bogus (and probably the whole global string_table
1346 2008-02-06 Sandro Santilli <strk@keybit.net>
1348 * testsuite/actionscript.all/case.as: use case-sensitive sorting
1349 for predictable results (case-insensitive depends on unspecified
1350 order of properties).
1352 2008-02-05 Sandro Santilli <strk@keybit.net>
1354 * testsuite/server/PropertyListTest.cpp: re-enable the tests,
1355 testing case-insensitive operations.
1356 * testsuite/generic-testrunner.sh: don't write a logfile in the
1357 same dir of the testcase, use the builddir instead.
1359 2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1361 * server/asobj/string.cpp, server/vm/ASHandlers.cpp: convert strings
1362 to wstring for string operations (length, slice, split, substr,
1363 indexOf, fromCharCode, charCodeAt, charAt, ord, chr). Fixes
1365 * testsuite/actionscript.all/String.as: tests should now pass.
1367 2008-02-05 Sandro Santilli <strk@keybit.net>
1369 * testsuite/misc-swfc.all/Makefile.am: distribute test sources.
1370 * testsuite/swfdec/PASSING: sync'd with master git
1372 2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1374 * testsuite/actionscript.all/String.as: add failing tests for
1375 string methods on multi-byte characters.
1377 2008-02-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1379 * server/movie_root.cpp: send unique gnash::key::code not SWFCode
1380 to event_id; edit_text_character relies on this code to work out
1381 which character was passed and SWFcode is bogus.
1382 * server/event_id.h: store gnash::key::code not SWFCode; setKeyCode
1383 converts SWFCode to a corresponding gnash::key::code.
1384 * server/gnash.h: add enum for different key code types.
1385 * server/button_character_instance.cpp: lookup SWFCode from
1387 * libbase/utf8.{cpp,h}: add {decode,encode}CanonicalString methods
1388 for converting between UTF-8 encoded std::string and std::wstring.
1389 Fix some bugs in character decoding.
1390 * server/edit_text_character.{cpp.h}: use std::wstring internally,
1391 as once we receive multi-byte characters the cursor position and
1392 std::string position are different. Wide characters mean string
1393 manipulation can stay as before. Interfaces still use std::string
1394 with conversions when necessary. Make wstring methods private.
1395 set_text_value(const char*) -> setTextValue(const wstring&).
1396 Handles characters like ö or ¶.
1398 2008-02-05 Bastiaan Jacques <bastiaan@bjacques.org>
1400 * libmedia/gst/VideoDecoderGst.cpp: Use a different ffdec
1401 element specific for screenvideo so that older gst-ffmpeg
1402 installations can play it.
1404 2008-02-05 Sandro Santilli <strk@keybit.net>
1406 * cygnal/testsuite/.cvsignore,
1407 cygnal/testsuite/cygnal.all/.cvsignore:
1410 2008-02-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1412 * libbase/utf8.{h,cpp}: make decodeNextUnicodeCharacter take a
1413 std::string::const_iterator by ref, encodeUnicodeCharacter
1414 (presently unused) return a std::string.
1415 * server/edit_text_character.cpp: use decodeNextUnicodeCharacter.
1417 2008-02-04 Sandro Santilli <strk@keybit.net>
1419 * server/as_object.cpp (getOwnProperty): remove useless round
1420 trip (key->name->key).
1421 * server/as_object.cpp (setPropFlags): fix handling of second
1422 argument (null, array or invalid).
1423 * testsuite/actionscript.all/Global.as: add more tests for
1426 2008-02-03 Bastiaan Jacques <bastiaan@bjacques.org>
1428 * server/asobj/NetStreamGst.cpp: Add some more error handling and
1431 2008-02-02 Sandro Santilli <strk@keybit.net>
1433 * testsuite/actionscript.all/TextField.as: success for the just-added
1435 * server/edit_text_character.cpp (format_text): expand bounding box
1436 at every line, not just at the end (when autoSize is true).
1439 2008-02-02 Sandro Santilli <strk@keybit.net>
1441 * testsuite/actionscript.all/TextField.as: add test for bug #22216.
1443 2008-02-01 Sandro Santilli <strk@keybit.net>.
1445 * server/swf_function.cpp (call operator): still declare named
1446 arguments as locals no matter if they were passed or not.
1447 * testsuite/actionscript.all/Function.as: add test for bug #22203.
1448 * server/parser/button_character_def.cpp (read): robustness
1449 improvement, fixes bug #22200.
1450 * server/asobj/xmlsocket.cpp (send): fix assertion. Fixes bug #22199.
1452 2008-01-31 Rob Savoye <rob@ripple.welcomehome.org>
1454 * macros/qt.m4: Set the topdir if pkg-config exists, so it can be
1456 * macros/pthreads.m4: Don't use host_cpu to match a platform. Look
1457 for pthreads, it turns out the check has been disabled by accident
1458 for quite a while... but BSD needs the -pthread flag.
1459 * utilities/Makefile.am: Add PTHREAD_CFLAGS.
1461 * libamf/amf.cpp: Oops, return original pointer as returned by
1462 new, not the incremented pointer. Use :encodeElement() for
1463 strings. Encode an array of AMF objects.
1464 * libamf/amf.h: Make all the encoding methods static.
1465 * libamf/element.{cpp,h}: Add function and variable data types,
1466 internal to Gnash. Initialize with an array of AMF objects. Create
1467 a new function block object in memory. Don't return nan, BSD
1469 * libamf/lcshm.cpp: Correctly remove Listeners. Format a memory
1470 segment header. Send now works, and puts AMF objects into the
1473 * configure.ac: Add test for IPC_INFO, which isn't portable to
1475 * server/asobj/LocalConnection.cpp: Don;t define any LC constants
1476 here, they're in libamf.lcshm.cpp now instead. Add flag for
1477 whether we are connected or not.
1478 * server/asobj/LocalConnection.h: Use LcShm class instead of Shm
1479 as a base class for shared memory.
1480 * server/vm/ASHandlers.cpp: Include unistd.h so write() is defined
1482 * libbase/shm.cpp: BSD wants 0 cast to key_t.
1483 * utilities/dumpshm.cpp: Only look for the key if IPC_INFO exists,
1484 as we can't find the key without if for now. Optionally write the
1486 * macros/qt.m4: Also look in ${QTDIR}/bin.
1487 * macros/incllist: Look inm /usr/pkg on BSD, not /pkg/.
1489 2008-01-31 Sandro Santilli <strk@keybit.net>
1491 * libbase/URL.cpp: don't threat ".swf" strings as any special.
1492 Fixes parsing of urls with ".swf" in the query string.
1493 * testsuite/libbase/URLTest.cpp: add test for query strings
1494 containing an ".swf" component, like many from
1495 http://foo.keybit.net/~strk/mapview/.
1497 2008-01-31 Sandro Santilli <strk@keybit.net>
1499 * gui/Player.cpp (load_movie): still add the acutual filename, if
1500 given, in the list of local sandboxes, or "gnash -u http://remote
1501 ./local.swf" won't work (the konqueror plugin uses that format,
1504 2008-01-31 Sandro Santilli <strk@keybit.net>
1506 * testsuite/actionscript.all/targetPath.as: make the test
1507 buildable with Ming head.
1509 2008-01-31 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1511 * libbase/rc.cpp: fix write of LCShmKey.
1512 * server/asobj/Global.cpp: drop unused header.
1513 * testsuite/actionscript.all/Math.as: restore some tests.
1515 2008-01-31 Sandro Santilli <strk@keybit.net>
1517 * server/font.cpp: don't assign 0 to std::strings... actually simplify
1518 the code avoiding stream::read_string() and using
1519 stream::read_string(std::string&) instead.
1520 * server/movie_root.cpp (display): do nothing if the movie frame
1521 is null. Fixes bug #22189.
1523 2008-01-31 Sandro Santilli <strk@keybit.net>
1525 * libamf/amf.{cpp,h}: have encodeVariable take an output parameter
1526 to return size of the serialized buffer; perform boundary checking
1528 * libamf/sol.{cpp,h}: drop unneeded write interfaces, const-correct
1529 the others; perform boundary checking before memcopies.
1530 Turns the memory corruption in bug #22188 to an assertion failure.
1532 2008-01-31 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1534 * gui/gtk{sup.h,.cpp}: add another rcfile option (insecureSSL).
1536 2008-01-31 Sandro Santilli <strk@keybit.net>
1538 * libamf/element.cpp, libamf/sol.{cpp,h}:
1539 Some memory management, leaks plugged, mismatched
1540 new[]/delete[] fixed.
1542 2008-01-30 Sandro Santilli <strk@keybit.net>
1544 * plugin/plugin.cpp, server/vm/ASHandlers.cpp:
1545 Encode target string in the GETURL request line.
1546 Is acceptable as long as neither target string nor url
1549 2008-01-30 Sandro Santilli <strk@keybit.net>
1551 * plugin/plugin.{cpp,h}: make player request handling line-based
1552 (each line is one request).
1553 * server/vm/ASHandlers.cpp (CommonGetUrl): pass the original url to
1554 the host, not the gnash::URL mangled one (this fixes javascript
1555 calls); don't pass the target as it'll just confuse the url for
1556 now (we still need to define a good format for the target).
1558 2008-01-30 Sandro Santilli <strk@keybit.net>
1560 * plugin/plugin.{cpp,h}: create a pipe for standalone to plugin
1561 communication and handle "GET" requests by loading the url
1563 * server/vm/ASHandlers.cpp (CommonGetUrl): more error handling
1564 and debugging info on host geturl request.
1566 2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1568 * gui/gtk.cpp: gettext macros.
1570 2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1572 * testsuite/actionscript.all/Global.as: add tests showing fussy
1573 behaviour with parseInt and octal numbers.
1574 * server/asobj/Global.cpp: use string::iterator instead of copying
1575 strings, remove dead or inactive code, parse octal numbers
1576 properly (compatibly, anyway).
1578 2008-01-30 Sandro Santilli <strk@keybit.net>
1580 * gui/Player.cpp (load_movie): use the pseudo root url
1581 for appending to the locale sendboxes. Fixes running
1582 multi-file applications from the filesystem in the
1583 plugin (or generally, loading first movie from stdin).
1585 2008-01-30 Sandro Santilli <strk@keybit.net>
1587 * gui/Player.{cpp,h}: add a setHostFD method.
1588 * server/movie_root.{cpp,h}: add hostFD getter and setter.
1589 * server/vm/ASHandlers.cpp (CommonGetUrl): use host fd
1590 to request load of an url, if given.
1591 * gui/gnash.cpp: add -F switch to specify a filedescriptor
1592 to use for communicating with the hosting application.
1594 2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1596 * server/asobj/System.cpp: consts
1597 * server/asobj: (various) drop 'using namespace std;' where it's not
1600 2008-01-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1602 * server/vm/VM.cpp: let System.cpp decide what to do with the system
1604 * server/asobj/System.cpp: restrict System.capabilites.language codes
1605 to the 20 officially specified. This is compatible with scripts
1606 that rely on there only being twenty.
1608 2008-01-29 Bastiaan Jacques <bastiaan@bjacques.org>
1610 * server/asobj/NetStreamGst.{cpp,h}: Warn if decodebin can't find a
1611 decoder for the requested stream.
1613 2008-01-29 Sandro Santilli <strk@keybit.net>
1615 * testsuite/misc-swfmill.all/Makefile.am: distribute swfmill
1616 sources, even if swfmill isn't available.
1617 * testsuite/misc-swfc.all/Makefile.am: don't attempt to
1618 build the button test runner if you can't build the
1619 actual swf (missing SWFC).
1620 * server/vm/ActionExec.cpp (call operator): interrupt
1621 execution if an opcode is advertised to cross the code
1622 segment boundaries. Fixes bug #22150.
1623 * libbase/jpeg.cpp: don't long jump in the constructor.
1625 * server/fill_style.cpp (create_gradient_bitmap): fix a probably
1626 unmeant float to int conversion.
1627 * server/asobj/LocalConnection.cpp: remove duplicated
1628 implementation of gnash::Listener class methods.
1630 2008-01-29 Sandro Santilli <strk@keybit.net>
1632 * server/as_value.h: make PROPNAME a noop
1633 * server/movie_root.{cpp,h}: provide a isLevelTarget
1634 method to take care of case-insensitively matching
1635 a path element with "_level" in SWF<7.
1636 * server/button_character_instance.cpp,
1637 server/character.cpp, server/sprite_instance.cpp,
1638 server/vm/ASHandlers.cpp: update "_level" handling.
1639 * testsuite/actionscript.all/case.as: success in property
1642 2008-01-29 Chad Musick <chadmusick@msbx.net>
1644 * libbase/string_table.h,cpp: Change string_table to be case
1645 insensitive for strings in SWF versions less than 7.
1646 * testsuite/server/PropertyListTest.cpp: Amend Test to not
1647 test case-sensitivity when it shouldn't be case sensitive.
1649 2008-01-28 Bastiaan Jacques <bastiaan@bjacques.org>
1651 * libmedia/gst/VideoDecoderGst.{cpp,h}: Tell the decoder about the
1652 expected video width and height. Check for error conditions more
1654 * libmedia/gst/gstappsink.{c,h}: Add
1655 gst_app_sink_pull_buffer_timed(), which waits up to one second
1656 before returning if the expected buffer does not make its way
1657 to the output queue.
1658 * server/parser/video_stream_def.cpp: Make sure the decoder parses
1659 intermedia frames if certain frames are skipped. Don't assume that
1660 frame 0 is a "spin-up" frame. Fixes Video-EmbedSquareTest.
1662 2008-01-28 Sandro Santilli <strk@keybit.net>
1664 * server/swf/tag_loaders.cpp (button_sound_loader): robustness
1665 improvements. Fix bug #22152.
1666 * server/parser/action_buffer.cpp (read): just log an swf error
1667 and return if the action buffer is 0 bytes long.
1669 * server/text.cpp (text_glyph_record::read): robustness improvements.
1672 2008-01-28 Bastiaan Jacques <bastiaan@bjacques.org>
1674 * server/parser/video_stream_def.cpp: Make sure ffmpeg doesn't read
1675 past the end of the buffer by appending 8 zero bytes.
1677 2008-01-28 Sandro Santilli <strk@keybit.net>
1679 * server/stream.{cpp,h}: fix comments about get_position and
1680 ensureBytes, add an ensureBits, make string reading functions
1682 * server/: cxform.cpp, font.cpp, matrix.cpp, rect.cpp,
1683 styles.cpp, parser/filter_factory.cpp, swf/StartSoundTag.cpp:
1686 2008-01-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1688 * pythonmodule/gnashpython.h: config.h -> gnashconfig.h.
1690 2008-01-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1692 * server/vm/ASHandlers.cpp (CommonGetUrl): Escape newline, tab etc.
1693 Escape pipe and backtick.
1695 2008-01-28 Sandro Santilli <strk@keybit.net>
1697 * server/vm/ASHandlers.cpp (CommonGetUrl): escape url before passing
1698 the the user-defined url opener. This hopefully fixes a critical
1699 bug allowing arbitrary command execution.
1701 2008-01-26 Bastiaan Jacques <bastiaan@bjacques.org>
1703 * configure.ac: Add some required gstreamer modules to detect.
1704 * libbase/image.cpp: Call the data() member function of the "source"
1705 image when update() is called.
1706 * libbase/image.h: Make data() virtual. Add an explicit constructor
1707 for rgb similar to the one in image_base.
1708 * libmedia/gst/MediaDecoderGst.cpp: Exclude some code relying on old
1709 VideoDecoderGst behaviour.
1710 * libmedia/gst/VideoDecoderGst.{cpp,h}: Reimplement VideoDecoderGst
1711 with a simple push/pop interface. Add a class gnashGstBuffer which
1712 wraps the reference counted GstBuffer as a subclass of image::rgb.
1713 This fixes bug #22067.
1714 * libmedia/gst/gstappsink.{c,h}: Statically load this gstreamer
1715 module. Add a non-blocking method for peeking the queue.
1716 * libmedia/gst/gstappsrc.c: Statically load the appsrc module.
1717 * server/asobj/NetStream.{cpp,h}: Change the argument to seek() from
1718 milliseconds to seconds, because that's what is received from
1720 * server/asobj/NetStreamGst.cpp: Add a missing break in the message
1722 * server/parser/video_stream_def.{cpp,h}: Use the new VideoStreamGst
1725 2008-01-26 Sandro Santilli <strk@keybit.net>
1727 * testsuite/misc-ming.all/: FlashVarsTest.as, FlashVarsTest.html,
1728 Makefile.am: test that any variable passed trough FlashVars
1729 is a string, never an object.
1731 2008-01-25 Sandro Santilli <strk@keybit.net>
1733 * server/sprite_instance.cpp: send the DATA event, don't just
1734 call the user-defined onData handler, when variables are
1735 loaded. Fixes bug #22116.
1737 2008-01-25 Rob Savoye <rob@ripple.welcomehome.org>
1739 * macros/qt.m4: Ubuntu hardy puts QT headers in different
1740 location, breaking using QTDIR to find them.
1742 * configure.ac: Add test to use gst-inspect to look for installed
1743 codecs for Gstreamer.
1745 2008-01-25 Bastiaan Jacques <bastiaan@bjacques.org>
1747 * server/asobj/NetStreamGst.cpp: print the element name when reporting
1748 about an error message coming from the pipeline.
1750 2008-01-25 Sandro Santilli <strk@keybit.net>
1752 * testsuite/actionscript.all/String.as: add better test
1753 for split(''), as the available ones weren't catching
1755 * server/asobj/string.cpp: fix String.split('') to return
1756 an array in which *each* element is a character from the
1757 input. This fixes http://www.gazbming.com/sokoban2.swf.
1759 2008-01-25 Sandro Santilli <strk@keybit.net>
1761 * gui/Makefile.am: generate klash.moc onlhy if KDE gui is enabled.
1763 * libamf/lcshm.{cpp,h}, server/asobj/LocalConnection.cpp,
1764 testsuite/libamf.all/test_lc.cpp, utilities/dumpshm.cpp:
1765 Use std::auto_ptr for returning newly allocated stuff
1766 while transferring ownerhips to caller.
1767 * testsuite/misc-ming.all/NetStream-SquareTest.c: add some newlines
1768 to workaround some bug in Ming head.
1770 2008-01-25 Rob Savoye <rob@ripple.welcomehome.org>
1772 * libamf/amf.cpp: Make extractElement() only process a single
1773 element instead of looping.
1774 * libamf/element.{h,cpp}: Convert the element in common data
1775 types. Add methods for creating special AMF objects.
1776 * libamf/lcshm.{cpp,h}: Add better support for SYSV style memory
1777 segments. Tweak parseHeader() to only grab the header, and not
1778 any of the AMF elements in the body. Also parse the header and the
1779 body of the memory segment when connecting. Add dump() method.
1780 * libbase/shm.{cpp,h}: Move SYSV style memory support to it's own
1781 method to reduce ifdef spagetti.
1782 * utilities/dumpshm.cpp: Use rewritten LcShm class instead of
1783 handling the segment directly.
1784 * testsuite/libamf.all/test_lc.cpp:
1786 2008-01-25 Sandro Santilli <strk@keybit.net>
1788 * testsuite/misc-ming.all/place_object_test.c: add more tests (and
1789 more to be added - gnash fails not allowing characters in a
1790 DisplayList to share a depth).
1791 * server/DynamicShape.cpp (clear): reset _currfill and _currline
1792 or they might point to released memory (line/fill styles were
1793 cleared). Fixes illegal vector access in
1794 http://www.gazbming.com/embed.php?id=sketchpad
1795 * server/swf/DefineFontAlignZonesTag.cpp: warn only
1796 once about not being implemented.
1797 * server/parser/shape_character_def.cpp (read):
1798 add warning about unimplemented DEFINESHAPE4 edge
1799 boundaries and scales.
1800 * gui/gui.cpp (getMovieInfo): add dragging character
1801 and character under the pointer.
1802 * server/movie_root.{cpp,h}: expose a method to query
1803 entity under the mouse and dragging char.
1805 2008-01-24 Sandro Santilli <strk@keybit.net>
1807 * testsuite/Makefile.am: distribute simple.exp
1808 * server/as_object.cpp: use PROPNAME where appropriate.
1809 * server/as_environment.cpp (find_object): use PROPNAME where
1811 * server/debugger.cpp: use PROPNAME when appropriate
1812 * server/movie_root.cpp (getKeyObject): use PROPNAME
1813 * server/asobj/xmlsocket.cpp (getEventHandler): use PROPNAME.
1814 * extensions/fileio/fileio.cpp, extensions/gtk2/gtkext.cpp:
1815 Don't convert strings passed to init_member, isn't needed.
1816 * server/vm/ActionExec.cpp: use PROPNAME rather then manually
1817 convert to lowercase (propedeutic to fix props case).
1819 2008-01-24 Chad Musick <chadmusick@msbx.net>
1821 * libbase/string_table.cpp,.h: Add a case insensitive option to
1823 * server/asClass.h,.cpp: Change code to compile with new string
1824 table key type (keys cannot be converted in one step to as_value)
1826 2008-01-23 Sandro Santilli <strk@keybit.net>
1828 * gui/kde_glue_agg.cpp: keep rendering no matter what HAVE_QTOPIA says
1829 (or rendering would be disabled for normal kde-gnash)
1830 [ this is a dejavu.. see ChangeLog entry of 2007-11-30 ]
1833 2008-01-23 Bastiaan Jacques <bastiaan@bjacques.org>
1835 * server/asobj/SoundGst.cpp: loadSound: if this is a streaming sound,
1838 2008-01-23 Sandro Santilli <strk@keybit.net>
1840 * testsuite/misc-ming.all/: Video-EmbedSquareTest.c,
1841 Video-EmbedSquareTestRunner.cpp: have mouse clicks change
1842 play state, check that play state of the root drives
1843 play state of the video.
1845 2008-01-23 Sandro Santilli <strk@keybit.net>
1847 * libbase/log.{cpp,h}: append to the log instead of truncating.
1848 This is so a web page containing multiple SWF movies doesn't
1849 trigger writes to truncated logs.
1851 2008-01-23 Sandro Santilli <strk@keybit.net>
1853 * server/parser/shape_character_def.cpp (read): only
1854 skip parsing shapes with 0 line/fill bits if the tag
1855 is a DEFINEFONT*. Fixes bug #22000 and a secondary
1858 2008-01-23 Sandro Santilli <strk@keybit.net>
1860 * testsuite/misc-ming.all/masks_test2runner.cpp: successes.
1861 * server/character.h (isMaskLayer): dynamic masks are not mask
1863 * server/dlist.cpp (add_invalidated_bounds): use isMaskLayer rather
1864 then comparing about the noClipDepthValue.
1865 * server/sprite_instance.cpp (get_topmost_mouse_entity,
1866 findDropTarget): rewrite mouse entity and drop target finders
1867 to take layer (static) masks into account.
1868 This fixes bug #21923 and movie in comment #7 of bug #20911.
1870 2008-01-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1872 * libbase/rc.cpp: Don't increment verbosity automatically when some
1873 debugging output is enabled.
1874 * gui/gtk.cpp: Use 'program-name' in about dialogue.
1876 2008-01-23 Sandro Santilli <strk@keybit.net>
1878 * server/sprite_instance.cpp (pointInVisibleShape): static masks
1879 don't depend on having mouse handlers in checking hitTest.
1880 * testsuite/misc-ming.all/masks_test2.c: add some self-contained
1881 tests, make a statically-masked instance mouse-sensitive.
1882 * testsuite/misc-ming.all/masks_test2runner.cpp: check that
1883 the mouse-sensitive character shouldn't grab mouse pointer
1884 if hit out of it's static mask.
1886 2008-01-23 Sandro Santilli <strk@keybit.net>
1888 * server/asobj/LoadVars.cpp: use named strings when available.
1890 2008-01-22 Sandro Santilli <strk@keybit.net>
1892 * extensions/dejagnu/dejagnu.cpp, extensions/gtk2/gtkext.cpp:
1893 naively fix warnings..
1895 2008-01-22 Sandro Santilli <strk@keybit.net>
1897 * server/impl.cpp (clear):
1898 unregister the render handler, and do so *after* the GC collect
1899 runs, clear the movie root before that.
1900 This seems to fix both bug #21311 and bug #21310 (segfaults
1903 2008-01-22 Sandro Santilli <strk@keybit.net>
1905 * server/movie_root.cpp (markReachableResources): don't assume
1906 the root movie was registered. Fixes bug #22079.
1908 2008-01-22 Bastiaan Jacques <bastiaan@bjacques.org>
1910 * server/asobj/NetStreamGst.cpp: Better error handling for play().
1912 2008-01-22 Sandro Santilli <strk@keybit.net>
1914 * testsuite/samples/Makefile.am: drop extraneous block of code, most
1915 likely ended in there due to a copy&paste error.
1917 2008-01-22 Bastiaan Jacques <bastiaan@bjacques.org>
1919 * server/asobj/NetStreamGst.cpp: pause(): set a default state to hush
1922 2008-01-22 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
1924 * libbase/rc.h: Add method to set url opener format.
1925 * gui/gtk{sup.h,.cpp}: option to set url opener format, tidy up,
1926 don't leak prefsData struct when the dialogue is closed.
1928 2008-01-22 Sandro Santilli <strk@keybit.net>
1930 * server/asobj/NetStream.{h,cpp}: add an isConnected
1931 method and use it from AS methods.
1932 * testsuite/actionscript.all/NetStream.as: bytesLoaded/bytesTotal
1933 are undefined if the NetStream doesn't have an associated
1934 NetConnection (fixed).
1935 * testsuite/misc-ming.all/NetStream-SquareTest.c: currentFPS is
1936 undefined if the NetStream doesn't have an associated NetConnection,
1937 a number otherwise (fixed).
1939 2008-01-22 Sandro Santilli <strk@keybit.net>
1941 * testsuite/misc-ming.all/NetStream-SquareTest.c: add a test
1942 segfaulting Gnash. See bug #22039.
1944 2008-01-22 Sandro Santilli <strk@keybit.net>
1946 * server/sprite_instance.cpp (sprite_swap_depth): ignore the call when
1947 target and source characters have the same depth.
1948 * server/asobj/SharedObject.cpp (sharedobject_getlocal): register the
1949 static GcResource with the VM. Fixes bug #22039, but not the
1950 correctness bugs as tested in the SharedObject.as case.
1951 * testsuite/actionscript.all/SharedObject.as: test that multiple calls
1952 to SharedObject.getLocal using same key return the same in-memory
1953 object, while changing the key returns a different object.
1955 2008-01-22 Sandro Santilli <strk@keybit.net>
1957 * testsuite/misc-ming.all/NetStream-SquareTest.c: expect the failures
1958 in currentFps, till bjacques fixes it. Add test for metadata object
1959 being an Object instance.
1961 2008-01-22 Sandro Santilli <strk@keybit.net>
1963 * server/asobj/NetStreamGst.cpp: make metadata object properties
1964 enumerable, deletable and overridable, fix bool properties
1965 and the 'duration' unit.
1966 * testsuite/misc-ming.all/NetStream-SquareTest.c: test metadata
1969 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
1971 * server/asobj/NetConnection.cpp: Remove duplicate URL announcement
1973 * server/asobj/NetStreamGst.{cpp,h}: Separate the video and audio
1974 decoding modules into bins and dynamically plug them when
1975 corresponding streams are encountered. This allows NetStream to play
1976 video-only or audio-only streams. Also, only play audio if a sound
1977 handler exists (in other words, if sound was enabled). Emit the
1978 playStop onStatus signal when an error is encountered.
1980 2008-01-22 Sandro Santilli <strk@keybit.net>
1982 * server/asobj/NetStream.cpp: use as_object::callMethod to dispatch
1983 onStatus and onMetData events.
1985 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
1987 * libmedia/gst/gstflvdemux.c: statically load the FLV demuxer.
1988 Dynamically loading it resulted in consisted crashing on Fedora 7. The
1989 static load method is deprecated by gstreamer, but we don't have a
1990 better solution right now.
1992 2008-01-21 Rob Savoye <rob@ripple.welcomehome.org>
1994 * gui/gtk.cpp: Only initialize LIRC if lirc is enabled.
1996 * libamf/sol.cpp: Swap from host to network for the magic number,
1997 not network to host. Fixes #22013.
1999 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
2001 * server/asobj/NetStreamGst.cpp: don't neglect to link the video
2002 pad if the *audio* pad is already linked.
2004 2008-01-21 Rob Savoye <rob@ripple.welcomehome.org>
2006 * libbase/network.cpp: Use _debug instead of an ifdef. Comment out
2007 trace messages in each method. Add hexdumps for network traffic.
2008 * gui/gnash.cpp: Add ALP includes.
2009 * gui/kde_glue_agg.cpp: Include qicon.h and agg headers.
2010 * gui/am-frag/gtk.am: Add ALP, which is a GTK derived GUI.
2011 * gui/am-frag/kde.am: Also build under Qtopia.
2012 * libamf/sol.cpp: always use boost:: with numeric data typedefs.
2013 * macros/ffmpeg.m4: Add better OpenBSD support, but maybe a moot
2014 point now since Gnash doesn't link directly against ffmpeg now.
2015 * macros/gettext.m4: OpenBSD defines INTLLIBS differently.
2016 * macros/glib.m4: We don't want -L/usr in the link path either.
2017 * configure.ac: Use gnashconfig.h instead of just config.h.
2018 * All GPL'd files: Update copyright years.
2019 * Most files: Include gnashconfig.h instead of config.h to avoid
2020 any name collisions.
2021 * autogen.sh: Fix the files generated form templates to include
2022 gnashconfig.h, not config.h, which isn't a unique name.
2024 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
2026 * libmedia/gst/gstflvdemux.c: Add a new #define so that this file will
2027 compile against older Gstreamer.
2029 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
2031 * server/asobj/NetStream.cpp: return undefined for currentFPS if a
2032 nonsensical number results.
2033 * server/asobj/NetStreamGst.cpp: whitespace fixes.
2034 * testsuite/actionscript.all/NetStream.as: revert my previous change,
2035 because the test accurately reflected PP behaviour, so we should mimic
2038 2008-01-21 Sandro Santilli <strk@keybit.net>
2040 * testsuite/misc-ming.all/masks_testrunner.cpp: add tests for effect
2041 of dynamic masks on mouse events.
2043 2008-01-21 Bastiaan Jacques <bastiaan@bjacques.org>
2045 * server/asobj/NetStreamGst.cpp: Disable parsing code for
2046 buffering messages, as the same is achived through signal
2047 handlers and older gstreamer doesn't have this function. Emit
2048 the playStop message when the end of the stream has been
2049 reached (allows NetStream-SquareTest to run).
2050 * testsuite/actionscript.all/NetConnection.as: We currently don't
2051 implement the isConnected property, so xcheck it for now.
2052 * testsuite/actionscript.all/NetStream.as: We now implement
2055 2008-01-21 Sandro Santilli <strk@keybit.net>
2057 * server/swf/tag_loaders.cpp: warn only once about different
2058 stream/playback info (yes, was annoying).
2059 * testsuite/misc-ming.all/NetStream-SquareTest.c: altought the test
2060 shows gst is unable to load the FLV, we seem to support the
2061 'currentFps' property now..
2063 2008-01-21 Sandro Santilli <strk@keybit.net>
2065 * server/as_object.cpp, server/button_character_instance.cpp,
2066 server/sprite_instance.cpp, server/asobj/xml.cpp: use new
2067 named strings. This should be particularely effective for
2068 sprite_instance::can_handle_mouse_event, which is called
2069 on every mouse movement.
2070 * server/character.{cpp,h}: add a getUserDefinedMethod() interface
2071 taking a string_table::key.
2072 * server/event_id.h, vm/action.cpp: add event_id::get_funtion_key
2074 * server/namedStrings.{cpp,h}: add more named strings
2075 for core properties.
2077 2008-01-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2079 * server/asobj/System.cpp: correct typo in server string, clean up.
2080 * server/as_value.cpp: Drop check for infinity after boost::lexical_cast
2081 from string to double (it can't happen), clean up.
2083 2008-01-21 Sandro Santilli <strk@keybit.net>
2085 * server/sprite_instance.cpp (pointInVisibleShape): even if we're a
2086 mask still run the hitTest if we can handle mouse events.
2087 * testsuite/misc-ming.all/masks_test.c: success in masks with mouse
2088 events and hitTest results.
2090 2008-01-21 Udo Giacomozzi <udo.gnu@nova-sys.net>
2092 * server/asobj/SoundGst.cpp: don't start playing sound in loadSound(),
2093 always seek (allows replay of the same sound)
2095 2008-01-21 Sandro Santilli <strk@keybit.net>
2097 * testsuite/misc-ming.all/: masks_test.c, masks_testrunner.cpp:
2098 Improved self-containment: print instructions on how
2099 to manually run and verify.
2101 2008-01-21 Sandro Santilli <strk@keybit.net>
2103 * testsuite/misc-ming.all/masks_testrunner.cpp: pixel checking and
2104 invalidated bounds testing after mask/maskee swapping.
2106 2008-01-20 Bastiaan Jacques <bastiaan@bjacques.org>
2108 * configure.ac: Disable the use of mad and ffmpeg, because they
2109 are no longer maintained media backends.
2110 * libmedia/Makefile.am: Compile the newly added gstflvdemux.{h,cpp}
2111 and gstflvparse.{h,cpp}. These files are Gstreamer's new FLV demuxer,
2112 which will be loaded on-the-fly if it not available on the system.
2113 * server/namedStrings.{h,cpp}: Add a symbol for onMetaData.
2114 * server/asobj/NetConnection.cpp: Replace openConnection with
2115 validateURL, since that name more accurately reflects its current
2116 purpose. Media handlers will now be in charge of starting their own
2117 network connections. Remove (now) unused methods.
2118 * server/asobj/NetStream.{cpp,h}: Use symbolic names for pause modes.
2119 Implement onMetaData through processMetaData.
2120 * server/asobj/NetStreamGst.{h,cpp}: Reimplement the Gstreamer
2121 NetStream handler. Gstreamer now takes care of URL resolving,
2122 downloading, buffering, FLV decoding and all grocery shopping and
2123 house cleaning. Because Gstreamer abstracts much of the threading
2124 code, we rarely need to lock the main execution thread. The new
2125 handler has been tested to work with YouTube, Lulu.tv, streaming
2126 ogg-theora-vorbis etc. However, seeking HTTP streams does not
2128 * server/asobj/Sound.cpp: Don't try to start a NetConnection, as it
2129 makes no sense in the base class.
2130 * server/asobj/SoundGst.cpp: Like NetStreamGst, SoundGst now lets
2131 Gstreamer handle downloading URLs and buffering data. SoundGst has
2132 received a general cleanup.
2134 2008-01-20 Sandro Santilli <strk@keybit.net>
2136 * server/character.{cpp,h}: keep a pointer from the mask to
2137 the maskee, as every character can dynamically mask at most
2138 a single maskee, so need to get an handle of old maskees
2139 when new are registered; have pointInVisibleShape return
2140 false for dynamic masks.
2141 * server/sprite_instance.cpp: (pointInVisibleShape): if a character
2142 is a mask return false, if it's dynamically masked check hit test
2143 against the mask too; (setMask): return a boolean value.
2144 * testsuite/misc-ming.all/masks_test.c: update expected results, most
2145 tests pass now, except a couple in which I'd thing Gnash is correct
2146 despite the official results...
2148 2008-01-20 Rob Savoye <rob@ute.welcomehome.org>
2150 * cygnal/Makefile.am: Build a library of dependant files, instead
2151 of linking them directly into the executable.
2152 * cygnal/testsuite/cygnal.all/Makefile.am: Link the library, not
2153 the objects. This fixes the distcheck problem of object files
2154 being left over after make check.
2156 2008-01-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2158 * gui/gtksup.h: get rid of C crap.
2160 2008-01-19 Sandro Santilli <strk@keybit.net>
2162 * testsuite/misc-ming.all/masks_test.c: move the dejagnu
2163 window to the right, so that pixel checking isn't confused
2166 2008-01-19 Sandro Santilli <strk@keybit.net>
2168 * testsuite/misc-ming.all/masks_test.c: test hitTest effects
2169 on dynamic masks and maskees. See bug #21923.
2171 2008-01-18 Sandro Santilli <strk@keybit.net>
2173 * cygnal/testsuite/cygnal.all/Makefile.am: don't build http.o
2174 and crc.o in source dir; clean all generated files.
2175 * testsuite/misc-mtasc.all/Makefile.am: clean generated files.
2177 2008-01-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2179 * server/asobj/xml.h, libgeometry/{Range,Point}2d.h,
2180 server/edit_text_character.h: drop 'using namespace std;' from
2182 * Lots of .cpp files: add std namespace where necessary.
2184 2008-01-18 Sandro Santilli <strk@keybit.net>
2186 * cygnal/http.cpp: fix extra semicolon error.
2188 2008-01-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2190 * libbase/rc.{h,cpp}: add methods to set whitelist, blacklist,
2191 flashVersionString, flashSystemOS, flashSystemManufacturer,
2192 startStopped, insecureSSL. Add updateFile() that decides where
2193 to write a gnashrc file (either to GNASHRC or to ~/.gnashrc, fail
2194 if neither can be found). Document more functions.
2195 * gui/gtk{sup.h,.cpp}: clean up movie properties dialogue, add more
2196 options to preferences dialogue. Allow saving to disk by clicking
2199 2008-01-17 Sandro Santilli <strk@keybit.net>
2201 * server/as_environment.cpp (find_object): don't allow dots
2202 after a slash was seen. Completes fixing the getvariable-delimiter
2203 swfdec tests (see bug #21883).
2204 * testsuite/swfdec/PASSING: getvariable-delimiter-{6,7,8}.swf
2205 succeed now, completing the serie.
2207 2008-01-17 Sandro Santilli <strk@keybit.net>
2209 * server/as_environment.cpp: add more corner case handlign
2210 for get_variable and find_object. The code keeps getting
2211 uglier, but this change gets no unexpected failure while
2212 gets unexpected successes in a few places:
2213 * testsuite/actionscript.all/getvariable.as: successes.
2214 * testsuite/misc-ming.all/callFunction_test.c: successes
2215 * testsuite/swfdec/PASSING: successes.
2217 2008-01-17 Sandro Santilli <strk@keybit.net>
2219 * libbase/tu_file.cpp: fix memory buffer adapter, applying
2220 an unchecked but blindly trusting patch sent on the gameswf
2223 2008-01-17 Sandro Santilli <strk@keybit.net>
2225 * testsuite/actionscript.all/getvariable.as: add absurd tests
2226 about getvariable/setvariable paths... See bug #21883.
2228 2008-01-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2230 * libbase/rc.{h,cpp}: enable writing of rcfiles (updateFile). Add function
2231 to set malformedSWF verbosity (already declared in rc.h). Add convenience
2232 function for writing path lists to a stream. Make sure strings consisting
2233 entirely of spaces are emptied when reading from the rcfile.
2235 2008-01-17 Sandro Santilli <strk@keybit.net>
2237 * server/button_character_instance.cpp (get_topmost_mouse_entity):
2238 topmost entity is a child, if it's a mouse entity, not necessarely
2240 * testsuite/misc-swfc.all/: Makefile.am, button_test1.sc,
2241 button_test1runner.cpp: turn button_test1.swf into a self-contained
2244 2008-01-17 Sandro Santilli <strk@keybit.net>
2246 * server/button_character_instance.{cpp,h}: drop the :advance()
2247 method, no more needed; reduce ::display() to a few lines.
2249 2008-01-17 Sandro Santilli <strk@keybit.net>
2251 * server/button_character_instance.{cpp,h}: drop dead enum,
2252 add HIT state to e_mouse_state enum, rework
2253 get_topmost_mouse_entity to use pointInVisibleShape and
2254 the get_active_characters method.
2255 * macros/firefox.m4: make --with-npapi-plugindir switch work.
2257 2008-01-16 Rob Savoye <rob@ripple.welcomehome.org>
2259 * configure.ac: Don't use AX_GCC_ARCHFLAG anymore.
2260 * Makefile.am: Make a seperate install-plugins target. Build all
2261 extensions, guis, and cygnal for distcheck. Fix ipkg
2262 packaging. Add OpenBSD packaging.
2263 * plugin/Makefile.am: Make seperate install-plugin and
2264 install-plugins targets.
2265 * plugin/klash/Makefile.am: Make install-plugin target with
2266 install-plugins alias.
2268 2008-01-16 Sandro Santilli <strk@keybit.net>
2270 * testsuite/actionscript.all/check.as: add a MING_LOGICAL_ANDOR_BROKEN
2272 * testsuite/actionscript.all/ops.as: don't run logical and/or tests
2273 if the installed Ming version is broken there... Fix expected
2274 results with a sane Ming version.
2276 2008-01-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2278 * server/parser/video_stream_def.cpp: fix size_t format warning.
2279 * libbase/rc.cpp: fix variable name for OS2.
2280 * gui/gtk{sup.h,.cpp}: redesign preferences dialogue; send changes
2281 to rcfile (nothing gets saved yet, but some changes work without a
2284 2008-01-16 Sandro Santilli <strk@keybit.net>
2286 * gui/gui.cpp (getMovieInfo): add class info of hit character.
2287 * server/movie_root.cpp (fire_mouse_event): for _droptarget, register
2288 closest AS-referenceable ancestor, not topmost character.
2289 Makes some progress in the movie 1.swf from comment 6 of bug #20911.
2290 * testsuite/misc-ming.all/shape_test.c: test that clip events
2291 are not invoked for shape placements.
2293 2008-01-16 Sandro Santilli <strk@keybit.net>
2295 * testsuite/misc-swfc.all/: Makefile.am, button_test1.sc:
2296 initial test for button interaction
2297 * server/button_character_instance.{cpp,h}: allow
2298 accessing button childs (state characters) by name.
2299 * server/swf/tag_loaders.cpp (button_character_loader):
2300 properly construct button characters
2301 * server/parser/button_character_def.{cpp,h}:
2302 Keep a pointer to the movie_definition containing
2303 Button definitions, expose a getSWFVersion.
2305 2008-01-16 Sandro Santilli <strk@keybit.net>
2307 * server/: character.h, button_character_instance.h,
2308 edit_text_character.h, sprite_instance.h, video_stream_instance.h:
2309 const-correct wantsInstanceName() and isActionScriptReferenceable()
2310 virtual methods. Added a getClosestASReferenceableAncestor() method.
2312 2008-01-16 Sandro Santilli <strk@keybit.net>
2314 * gui/Player.cpp: fix confusing SECURITY message about sandbox
2316 * server/impl.cpp: remove dead code.
2317 * server/sprite_instance.cpp (processCompletedLoadVariableRequest):
2318 Appropriately case variable names.
2320 2008-01-16 Sandro Santilli <strk@keybit.net>
2322 * server/sprite_instance.cpp (loadVariables): oops, skil variables
2323 with *name* starting with dollar sign, not value...
2325 2008-01-15 Rob Savoye <rob@ripple.welcomehome.org>
2327 * plugin/Makefile.am: Add install-plugin target. Don't do
2328 anything for just the install target.
2329 * packaging/debian/rules: Add install-plugin.
2330 * packaging/redhat/gnash.spec: Add install-plugin.
2331 * macros/boost.m4: Change the sed pattern to always remove the
2332 suffix correctly. Fixes #21977.
2333 * macros/lib-link.m4, nls.m4: Remove usages of AC_CONFIG_AUX_DIR
2334 macro, as we don't use an aux dir.
2336 2008-01-15 Sandro Santilli <strk@keybit.net>
2338 * libamf/: element.{cpp,h}, lcshm.{cpp,h}, sol.{cpp,h},
2339 utilities/soldumper.cpp: fix a bunch of compiler warnings.
2340 The code isn't any better, but error stream is less
2343 2008-01-15 Sandro Santilli <strk@keybit.net>
2345 * server/edit_text_character.cpp: initialize TextField as an
2346 AsBroadcaster, broadcast onChanged events (it seems onKillFocus
2347 and onSetFocus should not... no idea why).
2348 * testsuite/actionscript.all/TextField.as: test existance of
2349 AsBroadcaster interface in TextField instance, updated expected
2352 2008-01-15 Sandro Santilli <strk@keybit.net>
2354 * server/as_object.cpp (tostring_method): don't check size of string
2355 returned by get_string_value, just return it as is.
2357 * testsuite/actionscript.all/String.as: test string concatenation
2358 between a primitive string and a string object.
2360 2008-01-15 Sandro Santilli <strk@keybit.net>
2362 * server/parser/movie_definition.h: comment out unused parameter.
2363 * server/sprite_instance.cpp (loadVariables): skip sending variables
2364 starting with a dollar sign. See bug #22006.
2365 * server/LoadVariablesThread.{cpp,h}: implement download canceling
2366 and proper destructor (cancels&joins). Fixes segfault reported
2367 in bug #21675 (comment #6).
2369 2008-01-15 Sandro Santilli <strk@keybit.net>
2371 * testsuite/swfdec/PASSING: shift-{5,6,7}.swf succeed
2372 * server/vm/ASHandlers.cpp: fix ActionShift* opcodes.
2373 * testsuite/actionscript.all/ops.as: add tests for ActionShiftRight2
2374 and formerly failing tests for ActionShiftLeft.
2376 2008-01-14 Sandro Santilli <strk@keybit.net>
2378 * testsuite/gnashrc.in: avoid printing malformed swf and actionscript
2379 error messages while executing automated testcases.
2381 2008-01-14 Sandro Santilli <strk@keybit.net>
2383 * server/asobj/Global.cpp: stub ASSetNative, ASSetNativeAccessor,
2385 * testsuite/actionscript.all/Global.as: test existance of ASnative,
2386 ASSetNative, ASSetNativeAccessor and ASconstructor.
2388 2008-01-14 Sandro Santilli <strk@keybit.net>
2390 * server/sprite_instance.cpp (loadVariables): don't skip the $version
2391 property, if it's there, and only add enumeratable properties.
2393 2008-01-14 Sandro Santilli <strk@keybit.net>
2395 * server/parser/: movie_definition.h, BitmapMovieDefinition.h,
2396 movie_def_impl.{cpp,h}:
2397 Drop unused create_instance,
2398 add a 'parent' argument to create_movie_instance.
2399 * server/BitmapMovieInstance.{cpp,h}: add 'parent' argument to
2401 * testsuite/DummyMovieDefinition.h: Drop unused create_instance.
2402 * server/impl.{cpp,h}: drop unused create_library_movie_inst function.
2403 * server/movie_instance.cpp (ctor): pass the character id in
2404 accordance with the assertion checking in character ctor
2405 (TODO: drop the id from character instances!)
2406 * server/sprite_instance.cpp:
2407 (loadMovie): update call to create_movie_instance;
2408 (attachMovieClipProperties) don't register a $version variable
2409 if the sprite has a parent: fixes bug #22006.
2410 * server/asobj/MovieClipLoader.cpp: comment update
2411 * testsuite/actionscript.all/MovieClip.as: add test for availability
2412 of the $version property.
2413 * testsuite/swfdec/PASSING: movieclip-version-{6,7,8}.swf and
2414 movie-enumerate-8.swf (completes the series) succeed.
2416 2008-01-14 Sandro Santilli <strk@keybit.net>
2418 * plugin/plugin.cpp: fix perror() usage, check that the pipe is
2419 initialized before attempting to write to it.
2421 2008-01-13 Sandro Santilli <strk@keybit.net>
2423 * libbase/URL.h: reduce string copies (not only in set_querystring).
2425 2008-01-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2427 * gui/gtk.cpp: i18n, add checkbox to sound toggle.
2428 * po/de.po: updated translation.
2429 * po/POTFILES.in: remove left-over file (as far as I can tell).
2430 * po/Makefile.am: add libmedia, extensions, plugin directories
2431 for internationalization (you can see how long it hasn't been
2433 * po/gnash.pot: updated gnash.pot.
2435 2008-01-12 Sandro Santilli <strk@keybit.net>
2437 * server/sprite_instance.cpp (loadVariables): don't force
2438 POST method always. Fixes orisinal games again.
2440 2008-01-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2442 * server/asobj/{SharedObject.cpp,string.cpp}, server/vm/ActionExec.cpp:
2443 fix size_t format warnings.
2444 * pythonmodule/gnashpython.{cpp,h}: extend gnash::character wrapper.
2445 * pythonmodule/pyGnash.cpp: add character bindings.
2447 2008-01-12 Udo Giacomozzi <udo.gnu@nova-sys.net>
2449 * libbase/URL.h: add set method for querystring
2450 * server/sprite_instance.cpp: case-insensitive check for GET/POST;
2453 2008-01-12 Udo Giacomozzi <udo.gnu@nova-sys.net>
2455 * libbase/URL.h: add set method for querystring
2456 * server/sprite_instance.{cpp,h}: implement GET and POST for
2459 2008-01-11 Sandro Santilli <strk@keybit.net>
2461 * testsuite/generic-testrunner.sh: sleep a tenth (1/10)
2462 of a second between advances. Makes loading data in
2463 the testsuite more stabily succeed.
2465 2008-01-11 Sandro Santilli <strk@keybit.net>
2467 * configure.ac: add a --disable-plugins option to disable
2468 both kparts and npapi plugins.
2469 * macros/firefox.m4: obsolete --with-plugindir, use
2470 --with-npapi-plugindir instead (the old one still work
2471 for backward compatibility).
2472 * doc/C/usermanual/installation/: custompath_configuration.xml,
2473 feature_configuration.xml: update info about plugin build and
2474 install dir options.
2476 2008-01-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2478 * server/sprite_instance.cpp, server/loadVariablesThread.cpp: Use
2479 SIZET_FMT for size_t format string.
2480 * pythonmodule/gnashpython.cpp: more methods in Player class.
2481 * pythonmodule/pyGnash.cpp: update bindings.
2482 * pythonmodule/gnashPythonExample.py: update examples.
2484 2008-01-11 Sandro Santilli <strk@keybit.net>
2486 * testsuite/swfdec/PASSING: chartoascii-4.swf succeed
2487 now. The versions 5 to 8 stil fail...
2488 * server/vm/ASHandlers.cpp (ActionOrd): make sure to
2489 return an unsigned int. Fixes load of games from
2490 http://www.ferryhalim.com/orisinal/.
2492 2008-01-11 Sandro Santilli <strk@keybit.net>
2494 * server/LoadVariablesThread.cpp: don't handle newlines
2495 in any special way...
2496 * testsuite/actionscript.all/MovieClip.as: test loadVariables
2497 method and tag (GETURL).
2499 2008-01-11 Sandro Santilli <strk@keybit.net>
2501 * server/sprite_instance.cpp: fix the MovieClip.meth() method
2502 to invoke toLowerString on first argument.
2503 * testsuite/actionscript.all/MovieClip.as: test that meth()
2504 should invoke toLowerString on first argument.
2506 2008-01-11 Sandro Santilli <strk@keybit.net>
2508 * server/asobj/LoadVars.cpp: rewrite the whole class.
2509 * testsuite/actionscript.all/LoadVars.as: no more failures for SWF6+
2510 (the remaining ones are for availability of the LoadVars in SWF5,
2511 which is suspicious).
2513 2008-01-11 Sandro Santilli <strk@keybit.net>
2515 * testsuite/actionscript.all/LoadVars.as: further improved
2516 the test. Will fix in next commit.
2518 2008-01-11 Sandro Santilli <strk@keybit.net>
2520 * testsuite/media/vars.txt: add a final variable label
2521 after newlines and w/out a terminating ampersend.
2522 * testsuite/actionscript.all/LoadVars.as: test that labels
2523 placed after newlines (and non ampersend-terminated) are
2526 2008-01-11 Sandro Santilli <strk@keybit.net>
2528 * server/vm/ASHandlers.cpp (ActionNewEquals): for SWF<=5
2529 always convert the input parameters to primitives.
2530 * testsuite/actionscript.all/String.as: success in
2531 number to string object comparison.
2532 * testsuite/actionscript.all/ops.as: success in comparison
2533 between different string objects with same primitive value.
2535 2008-01-11 Sandro Santilli <strk@keybit.net>
2537 * testsuite/actionscript.all/String.as: test String object
2540 2008-01-10 Sandro Santilli <strk@keybit.net>
2542 * server/sprite_instance.cpp (get_member): it seems like _global is
2543 available for sprites defined by SWF6, no matter VM version.
2545 2008-01-10 Sandro Santilli <strk@keybit.net>
2547 * server/sprite_instance.cpp: invoke onData at end of loadVariables
2549 * gui/gui.cpp (resize_view): always redraw on resize.
2552 2008-01-10 Sandro Santilli <strk@keybit.net>
2554 * server/sprite_instance.cpp: size_t is an unsigned int here...
2555 use SIZET_FMT for it.
2557 2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2559 * server/sprite_instance.cpp: fix string format for unsigned long.
2561 2008-01-10 Sandro Santilli <strk@keybit.net>
2563 * < all over > : since I dropped timers.h inclusion from movie_root.h
2564 the remaining of the changes are adding missing include here and
2566 * server/array.cpp: fix double-to-int cast in Array ctor.
2567 * testsuite/swfdec/PASSING: settimeout-*.swf succeed.
2568 * server/movie_root.cpp (executeTimers): execute timers
2569 in order of expiration.
2570 * server/timers.{cpp,h}: extend interfaces to allow for
2571 less clock lookup calls and query expiration time.
2573 2008-01-10 Sandro Santilli <strk@keybit.net>
2575 * server/swf/tag_loaders.cpp (sound_stream_head_loader,
2576 define_sound_loader): check sample rate arguments.
2578 2008-01-10 Sandro Santilli <strk@keybit.net>
2580 * server/parser/movie_def_impl.{cpp,h}: make exported resource
2581 container access thread-safe, cleanup debug messages
2582 in get_export_resource().
2583 * server/swf/tag_loaders.cpp (sound_stream_head_loader): print
2584 unimplemented messages for unsupported tag records.
2585 * server/asClass.h, server/asobj/ClassHierarchy.h: comment out
2586 unused parameters (to remove compiler warnings).
2587 * server/: drag_state.h, movie_root.cpp: use floats for drag offset.
2588 * pythonmodule/Makefile.am: AUTOMAKE_OPTIONS must be outside
2589 of conditionals. Fixes bug #21994.
2591 2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2593 * configure.ac: hopefully make sure pythonmodule really doesn't
2594 build automatically.
2596 2008-01-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2598 * server/movie_root.cpp: use get() method of smart pointer
2599 fix a broken build (at least with boost 1.33).
2600 * pythonmodule/*: General fix up.
2602 2008-01-09 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2604 * pythonmodule/gnashpython.{h,cpp}: new pythonwrapper::GnashPlayer
2605 class for providing Python bindings.
2606 * pythonmodule/pyGnash.cpp: the python module with interface to
2608 * pythonmodule/gnashPythonExample.py: example script as a substitute
2609 for proper documentation.
2610 * configure.ac, Makefile.am, pythonmodule/Makefile.am: add new
2611 directories; it's not built by default, neither are there macros
2612 in configure.ac yet. To build, change ENABLE_GNASH_PYTHON_MODULE
2613 manually and specify the python headers/libs in pythonmodule/Makefile.am.
2615 2008-01-09 Sandro Santilli <strk@keybit.net>
2617 * server/movie_root.cpp (findCharacterByTarget): start from
2618 an arbitrary level for resolution, not necessarely the
2619 original root movie...
2620 * server/vm/ASHandlers.cpp (CommonGetUrl):
2621 Don't convert target movie id to lowercase !
2622 Provide a compile-time macro to determine whether or not
2623 movie loads are postponed, being a pretty new thing...
2624 (defaults to do postpone).
2626 2008-01-09 Sandro Santilli <strk@keybit.net>
2628 * testsuite/misc-ming.all/: loadMovieTest.c, loadMovieTestRunner.cpp:
2629 Initial work to turn loadMovieTest.swf into a
2630 self-described/contained testcase.
2632 2008-01-09 Sandro Santilli <strk@keybit.net>
2634 * server/asobj/Math.cpp: make _global.Math inherit
2636 * testsuite/actionscript.all/Math.as: test that _global.Math
2637 is instance of Object, add consistency check.
2639 2008-01-09 Sandro Santilli <strk@keybit.net>
2641 * server/movie_root.{cpp,h}: add a loadMovie method
2642 to schedule loads for next advance, using late
2643 evaluation of target path (tested, but not automated).
2644 * server/vm/ASHandlers.cpp (CommonGetUrl): delegate
2645 movie loads to movie_root.
2646 * testsuite/misc-mtasc.all/: level5.as, level87.as,
2647 level99.as: frame count at loaded movie execution
2649 * testsuite/swfdec/PASSING: loadvariables-5.swf
2650 succeeds (no idea why..)
2652 2008-01-09 Sandro Santilli <strk@keybit.net>
2654 * server/: as_value.cpp, movie_root.{cpp,h}:
2655 Add a movie_root::findCharacterByTarget() and
2656 use it for soft refs.
2658 2008-01-09 Sandro Santilli <strk@keybit.net>
2660 * testsuite/misc-ming.all/DragDropTestRunner.cpp:
2661 advance playhead while waiting for movies to be
2664 2008-01-09 Sandro Santilli <strk@keybit.net>
2666 * server/movie_root.cpp (setLevel): remove interval
2667 timers when replacing _level0. Add note about additional
2668 things to check for that case.
2670 2008-01-09 Sandro Santilli <strk@keybit.net>
2672 * server/movie_root.{cpp,h}: clear the interval timeouts
2673 on restart/reset/clear.
2675 2008-01-09 Sandro Santilli <strk@keybit.net>
2677 * server/movie_root.cpp (setLevel): properly destroy
2678 existing levels when loading into them.
2679 * testsuite/gnashrc.in: pretend we're version
2680 Pretend we're version WIN 9,0,100,0 while running tests
2681 (to be predictable and compatible with swfdec testsuite)
2682 * testsuite/swfdec/gen_run_swfdec_testsuite.sh:
2683 Use testsuite/gnashrc
2685 2008-01-08 Sandro Santilli <strk@keybit.net>
2687 * testsuite/misc-mtasc.all/: level5.as, level87.as,
2688 level99.as, levels.as: add tests to check when do
2689 actions in first frame of loaded levels get executed.
2691 2008-01-08 Sandro Santilli <strk@keybit.net>
2693 * testsuite/misc-ming.all/: DrawingApiTest.as,
2694 DrawingApiTestRunner.cpp: fix test, now the
2695 beginFill alpha is correct (couldn't belive we
2696 didn't have a test for it, indeed we had but was
2699 2008-01-08 Sandro Santilli <strk@keybit.net>
2701 * server/asobj/MovieClipLoader.cpp: fix MovieClipLoader.getProgress()
2702 * testsuite/actionscript.all/MovieClipLoader.as: test
2703 MovieClipLoader.getProgress().
2705 2008-01-08 Sandro Santilli <strk@keybit.net>
2707 * server/impl.cpp: have MovieLibrary read cache limit from Rc file.
2709 * server/sprite_instance.cpp (sprite_beginFill): don't ignore
2710 second argument (we miss a test for this, incredibly).
2712 2008-01-08 Sandro Santilli <strk@keybit.net>
2714 * server/sprite_instance.cpp (loadMovie): properly compute
2715 level number when we're the root movie.
2716 * testsuite/misc-mtasc.all/: Makefile.am, level5.as, level87.as,
2717 level99.as: add test for loading a moving into an existing
2720 2008-01-08 Sandro Santilli <strk@keybit.net>
2722 * testsuite/swfdec/PASSING: synced with master git (except
2723 I had to skip movieclip-version-* tests to avoid timeouts..)
2724 * testsuite/misc-ming.all/loadMovieTestRunner.cpp: advance after
2725 pressing the mouse button, as (theoretically) loads should never
2726 happen before next advance.
2727 * server/sprite_instance.cpp: implement MovieClip.meth() function.
2728 * testsuite/actionscript.all/MovieClip.as: tests for MovieClip.meth().
2729 * testsuite/misc-mtasc.all/level99.as: add tests for _levelX._name
2732 2008-01-07 Matthias Berndt <berndt.matthias@gmx.de>
2734 * macros/boost.m4: construct proper ac_cv_path_boost_lib and
2735 ac_cv_path_boost_extra_lib even if the paths contain dots.
2738 2008-01-07 Sandro Santilli <strk@keybit.net>
2740 * server/sprite_instance.cpp (get_root): use VM version, not
2741 relative movie one, to determine whether or not to use
2743 * testsuite/actionscript.all/MovieClipLoader.as: _lockroot use
2746 2008-01-07 Sandro Santilli <strk@keybit.net>
2748 * server/array.cpp: in Array constructor take negative
2749 length as zero. Not correct yet, but at least saves some
2750 memory and makes Gnash a bit more robust (fixes bug #21975).
2752 2008-01-07 Sandro Santilli <strk@keybit.net>
2754 * server/fill_style.{cpp,h}: add a matrix argument
2755 to the constructor taking a bitmap definition.
2756 * server/parser/BitmapMovieDefinition.cpp: appropriately
2757 scale bitmap fill rather then the drawn shape.
2758 * server/BitmapMovieInstance.cpp: don't scale the character,
2759 it's the fill that needed scaling.
2760 * testsuite/swfdec/PASSING: moviecliploader-known-image-size-{7,8}.swf
2762 * testsuite/actionscript.all/MovieClipLoader.as: checks for jpeg size
2765 2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2767 * gui/gnash.cpp, gui/Player.h: drop -b option.
2769 2008-01-07 Sandro Santilli <strk@keybit.net>
2771 * testsuite/actionscript.all/MovieClipLoader.as: fix the test, and add
2772 a new test showing _width/_height of loaded bitmap is wrong (the
2773 active_sharing.swf youtube bug).
2775 2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2777 * gui/gtk.cpp: realize _overlay window before reparenting the
2778 drawing area (stops OGL flipping the movie upside-down).
2780 2008-01-07 Sandro Santilli <strk@keybit.net>
2782 * server/asobj/xml.cpp: make verbosity a compile-time option.
2783 * server/sprite_instance.cpp (sprite_setMask): allow MovieClip.setMask
2784 to be called on any character, not just sprites. Fixes
2785 swfdec's image/mask-textfield-6.swf test (not automated).
2787 2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2789 * gui/gtk.cpp: move fullscreen to View menu and give it a pretty icon,
2790 plus some reorganization that got missed last time.
2792 2008-01-07 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2794 * gui/gtk{sup.h,.cpp}: cleanup, reorganize, add convenience functions
2795 for widget and dialogue display. Add the Gnash icon to most windows.
2796 Fix fullscreen display for movies that are initially larger than the
2797 screen size in the stand-alone player. The icon in the 'About'
2798 dialogue also works now.
2799 * plugin/plugin.cpp: add 2008 to copyright declaration in the plugin
2801 * gui/gui.{h,cpp}: add comments.
2802 * all modified files: add 2008 to copyright year.
2804 2008-01-07 Sandro Santilli <strk@keybit.net>
2806 * AUTHORS: add Zou Lunkai and Benjamin Wolsey.
2808 2008-01-05 Rob Savoye <rob@ripple.welcomehome.org>
2810 * server/asobj/LocalConnection.{cpp,h}: Use boost::uint8_t
2812 * po/Makefile.am: Make the dircetories before trying to install in
2814 * testsuite/libamf.all/test_lc.cpp: New test for LocalConnection
2816 * testsuite/libamf.all/Makefile.am: Remove the old bogus AMF
2817 tests. Things are too different now for these to work without a
2818 lot of effort, and their functionality is covered by the other
2820 * testsuiote/libamf.all/test_{number,object,variable,string}.cpp:
2821 Remove as these are now bogus.
2822 * testsuite/libamf.all/test_sol.cpp: Use ::init() instead of the
2824 * testsuite/libamf.all/test_el.cpp: Dump the element too.
2825 * libamf/element.{cpp,h}: Add a dump() method.
2827 2008-01-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2829 * gui/gui.cpp: add messages for unimplemented fullscreen.
2830 * gui/gtk.cpp: cleanup, comment out tree display (we don't need two
2831 of the same thing for the release).
2833 2008-01-05 Sandro Santilli <strk@keybit.net>
2835 * testsuite/actionscript.all/TextField.as: check that a textfield
2836 object is a listener of itself.
2837 * server/as_value.cpp: make soft references verbosity a compile-time
2840 2008-01-05 Sandro Santilli <strk@keybit.net>
2842 * server/as_object.cpp (setPropFlags): fix infinite loop while setting
2843 flags to comma-separated prop strings.
2844 * server/asobj/LoadVars.cpp: cleanup VM accesses to not rely on the
2846 * testsuite/Makefile.am: remove tmpSharedObject on make clean.
2847 * libamf/sol.cpp (SOL::readFile): revert the fix to magic number
2848 consistency, it really seems it's us failign to swap bytes
2851 2008-01-05 Sandro Santilli <strk@keybit.net>
2853 * libamf/sol.cpp (SOL::readFile): fix magic number consistency
2855 * testsuite/: Makefile.am, gnashrc.in: allow read-write access
2856 to SOL under the testsuite directory.
2857 * testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test set SOLSafeDir
2858 and SOLReadOnly directives.
2859 * testsuite/actionscript.all/SharedObject.as: fix the testcase's
2861 * server/asobj/ClassHierarchy.cpp: make NetConnection available
2863 * testsuite/actionscript.all/NetConnection.as: fix testcase.
2865 2008-01-05 Sandro Santilli <strk@keybit.net>
2867 * testsuite/DummyMovieDefinition.h: set a fake url for the dummy
2868 definition, or VM initialization would abort.
2869 * server/asobj/LocalConnection.{cpp,h}: allow build to complete.
2871 2008-01-04 Rob Savoye <rob@ripple.welcomehome.org>
2873 * server/asobj/LocalConnection.cpp: A mostly implemented
2874 LocalConnection class.
2876 * testsuite/actionscript.all/SharedObject.as: Use a multi level
2878 * testsuite/actionscript.all/NetConnection.as: Use check.a
2879 sinstead of dejagnu.as.
2880 * testsuite/actionscript.all/Makefile.am: Add libamf to the
2883 * server/asobj/SharedObject.cpp: Use Element::init() instead of
2884 constructing, as it appears to have problems with some gcc
2885 versions. This fixes the SharedObject.as test case.
2887 2008-01-05 Sandro Santilli <strk@keybit.net>
2889 * server/vm/VM.{cpp,h}: add getSWFUrl() method to fetch
2890 url of originating movie in a reliable way.
2891 * server/URLAccessManager.cpp (local_check): don't assume
2892 the movie_root always has an instance of originating if
2893 the VM is initialized (fixes a race condition).
2894 * server/asobj/SharedObject.cpp: use the new VM::getSWFUrl() method
2895 to figure out domain for .sol files (simplifies the code).
2897 2008-01-04 Rob Savoye <rob@ripple.welcomehome.org>
2899 * libamf/sol.cpp: Properly caluculate the filesize.
2901 2008-01-04 Sandro Santilli <strk@keybit.net>
2903 * plugin/Makefile.am: drop useless install/uninstall rules,
2904 automatically provided by automake.
2906 2008-01-04 Sandro Santilli <strk@keybit.net>
2908 * plugin/klash/Makefile.am: actually drop all install rules,
2909 automake does a perfect job at it.
2911 2008-01-04 Sandro Santilli <strk@keybit.net>
2913 * plugin/klash/Makefile.am: don't quote installation paths, or
2914 ~ would not be interpreted by mkdir_p as $HOME. Use DESTDIR
2915 for the kde service too, and create the dir if non existing.
2917 2008-01-04 Sandro Santilli <strk@keybit.net>
2919 * server/URLAccessManager.cpp (local_check): don't use base url
2920 (-U) to tell apart local movies from remote ones, as base url
2921 is web-author-forgeable ('base' attribute).
2922 Use non web-author-forgeable virtual url of starting movie
2924 Skip the "forbid load of local resources by network movie"
2925 check if no starting movie exists yet (to allow loading a local
2926 file pretending it was a remote one).
2927 Should fix bug #21930 and allow more flexibility.
2928 * Makefile.am: install plugins under /tmp/ during 'distcheck'.
2929 (we can do something a bit smarter, but it's a start).
2930 * doc/C/usermanual/installation/custompath_configuration.xml:
2931 Document --with-kde-pluginprefix configure switch.
2933 2008-01-04 Fredrik Johansson <fredrik@mumme.se>
2935 * configure.ac, plugin/klash/Makefile.am:
2936 add --with-kde-pluginprefix configure switch.
2939 2008-01-04 Sandro Santilli <strk@keybit.net>
2941 * server/sprite_instance.cpp (beginGradientFill):
2942 Improvements in non-boxed matrixType use, comments
2943 about future improvements.
2945 2008-01-04 Sandro Santilli <strk@keybit.net>
2947 * testsuite/server/MatrixTest.cpp: add a test
2948 for transforming a couple of points using
2949 a translate + scale approach. This is the
2950 way we should transform radial gradients
2951 for beginGradientFill, probably optimizable
2952 but helpful for understanding it.
2954 2008-01-03 Sandro Santilli <strk@keybit.net>
2956 * server/sprite_instance.cpp (beginGradientFill):
2957 Improvements in "box" matrixType parsing.
2958 Still not 100% correct, but translation and scaling
2959 seem good, and rotation does have an effect.
2960 The problem is that translation/scaling and rotation
2961 is happening in the wrong order.
2963 2008-01-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2965 * gui/gui.{h,cpp}: ^F toggles fullscreen (not in the plugin - no shortcuts work
2966 here). Add toggleFullscreen() to avoid code duplication.
2967 * gui/gtk.cpp: hide menu bar for fullscreen in standalone player.
2969 2008-01-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
2971 * gui/gui.{cpp,h}: add setFullscreen(), unsetFullscreen() and
2972 _isFullscreen flag as virtual methods. At present only available
2973 as a menu toggle in the GTK GUI.
2974 * gui/gtk{.cpp,sup.h}: implement fullscreen for GTK. It works
2975 more or less for the plugin and standalone except that the
2976 size and/or dimensions are often wrong, most notably for youtube.
2978 2008-01-03 Sandro Santilli <strk@keybit.net>
2980 * server/fill_style.cpp (sample_gradient): if no gradients
2981 are defined return the black color. Fixes an assertion failure
2982 on malformed or as-defined gradientrecord-less linear grads.
2984 2008-01-02 Sandro Santilli <strk@keybit.net>
2986 * server/DynamicShape.{cpp,h},
2987 server/fill_style.{cpp,h}, server/matrix.h,
2988 server/sprite_instance.{cpp,h}:
2989 Draft beginGradientFill support. Almost works, just
2990 needs to get the matrix argument right ...
2992 2008-01-02 Sandro Santilli <strk@keybit.net>
2994 * server/fill_style.cpp, server/font.cpp,
2995 server/impl.cpp, server/parser/movie_def_impl.{cpp,h},
2996 server/parser/movie_definition.h, server/swf/tag_loaders.cpp:
2997 Remove obsoleted get_create_bitmaps and get_create_font_shapes
2998 methods of movie_definition.
3000 2008-01-02 Sandro Santilli <strk@keybit.net>
3002 * doc/C/usermanual/installation/custompath_configuration.xml:
3003 Document new KDE switches.
3005 2008-01-02 Fredrik Johansson <fredrik@mumme.se>
3007 * Makefile.am, configure.ac, plugin/klash/Makefile.am:
3008 Add --with-kde-appsdatadir and --with-kde-configdir switches.
3011 2008-01-02 Sandro Santilli <strk@keybit.net>
3013 * backend/: render_handler.h, render_handler_d3d.cpp,
3014 render_handler_xbox.cpp: remove last references to the
3015 triangulating render handler.
3017 2008-01-01 Udo Giacomozzi <udo.gnu@nova-sys.net>
3019 * gui/fb.cpp: Limit calls to notify_mouse_moved(), process
3020 more events at once (8 -> 100 max)
3022 2008-01-01 Sandro Santilli <strk@keybit.net>
3024 * libamf/element.{cpp,h}: improve const correctness.
3025 * server/asobj/SharedObject.cpp: drop useless const_casts.
3027 2008-01-01 Sandro Santilli <strk@keybit.net>
3029 * server/asobj/SharedObject.cpp (sharedobject_getlocal):
3030 Use URL of first movie loaded, not base url, for security:
3031 base url can be set arbitrarily by publishers.
3032 Still use second argument if more then 2 are given (this
3033 is standard behaviour, not tested specifically).
3035 2007-12-31 Rob Savoye <rob@ripple.welcomehome.org>
3037 * libbase/shm.{cpp,h}: Move from server directory.
3038 * libbase/Makefile.am: Build Shm class here.
3039 * server/shm.{cpp,h}: Move to libbase directory.
3040 * sever/Makefile.am: Don't build Shm class here.
3042 2007-12-30 Rob Savoye <rob@ripple.welcomehome.org>
3044 * libamf/sol.cpp: Various tweaks for 64bit big-endian systems,
3045 namely the ppc in a G5 or PS3.
3047 * utilities/dumpshm.cpp: Don't use ipc_perm if the __key field
3050 * server/asobj/SharedObject.cpp: Handle the second argument to
3051 getLocal() correctly, which doesn't add either the domain nor the
3052 swf file name. Fixes the Shared Object part of #21377, which now
3053 gets to the next frame.
3054 * libamf/element.{cpp,h}: Add a few constructors that take a
3055 std::string argument for the name.
3056 * libamf/sol.cpp: Remove bogus error message.
3058 * server/asobj/SharedObject.cpp: Use Element class instead of
3059 amf_element_t everywhere.
3061 * libamf/element.{cpp,h}: New Element class to represent an AMF
3063 * libamf/Makefile.am: Add element.{cpp,h}, and lcshm.{cpp,h}.
3064 * libamf/amf.{cpp,h}: Use Element class instead of amf_element_t
3065 everywhere. Move object types to element.h. Refactor all encoders
3066 and decoders. Ifdef out for now stuff that should really be in
3068 * libamf/lcshm.{cpp,h}: Use Element class instead of amf_element_t
3070 * libamf/sol.{cpp,h}: Use Element class instead of amf_element_t
3071 everywhere. Use new style encoders and decoders.
3072 * testsuite/libamf.all/Makefile.am: Add new test_el test case for
3073 testing the Element class.
3074 * testsuite/libamf.all/test_sol.cpp: Use Element class instead of
3075 amf_element_t everywhere. Use new style encoders and decoders.
3077 * libamf/lcshm.{cpp,h}: New LcShm class for manipulating AMF
3078 objects as used within LocalConnection shared memory segments.
3080 2007-12-30 Sandro Santilli <strk@keybit.net>
3083 doc/C/usermanual/installation/custompath_configuration.xml:
3084 Fallback to old installation path for kparts plugin if kde-config
3085 is not found. Document defaults for both kparts and npapi
3088 2007-12-30 Sandro Santilli <strk@keybit.net>
3090 * Makefile.am, configure.ac: add --with-kde-plugindir
3091 and --with-kde-servicesdir options.
3092 * doc/C/usermanual/installation/: custompath_configuration.xml,
3093 feature_configuration.xml: document new kparts options and cleanup
3094 info about the npapi plugin a bit.
3095 * macros/firefox.m4: use the NPAPI acronym when referring to the
3096 formerly known as "Firefox" plugin.
3097 * plugin/klash/Makefile.am: use kparts installation patsh as detected
3098 or specified by user at configure time.
3100 2007-12-29 Rob Savoye <rob@ripple.welcomehome.org>
3102 * utilities/dumpshm.cpp: Add support to search through all sysv
3103 style shared memory segments and look for the LocalConnection
3104 one so the user doesn't have to know anything to find it.
3105 * configure.ac: Add test for the key field of ipc_perm data
3106 structure used by shmctl() to get the key.
3108 * testsuite/misc-swfc.all/Makefile.am: Add TEST_CASES to
3111 2007-12-29 Sandro Santilli <strk@keybit.net>
3113 * server/: BevelFilter.h, BitmapFilter.h,
3114 BlurFilter.h, ColorMatrixFilter.h, ConvolutionFilter.h,
3115 DropShadowFilter.h, GlowFilter.h, GradientBevelFilter.h,
3116 GradientGlowFilter.h, cxform.{cpp,h}, matrix.{cpp,h},
3117 parser/filter_factory.{cpp,h}:
3118 Change interfaces to take gnash::stream
3119 by ref rather then by pointer.
3120 * server/parser/action_buffer.{cpp,h}: add a movie_definition
3121 reference in code segments, and provide a getDefinitionURL()
3122 method to retrive the originating url.
3123 * server/parser/button_character_def.{cpp,h},
3124 server/swf/DoActionTag.h, server/swf/DoInitActionTag.h,
3125 server/swf/PlaceObject2Tag.{h,cpp}:
3126 Properly construct action_buffer by passing originating movie
3129 2007-12-29 Sandro Santilli <strk@keybit.net>
3131 * plugin/klash/Makefile.am: use kde-config to find install
3132 system dirs for kde plugin.
3133 * testsuite/MovieTester.cpp: allow loading initial movie
3135 * utilities/processor.cpp: add main movie base dir
3136 to local sandboxes, or gprocessor won't be able to
3137 play anything not explicitly in the sandboxes list.
3139 2007-12-28 Sandro Santilli <strk@keybit.net>
3141 * doc/C/usermanual/usage/gnashrc.xml: update info about
3142 localSandboxPath directive.
3143 * gui/Player.cpp, server/impl.cpp: don't add the "base url"
3144 of the movie to the local sandboxes list, since it may be
3145 set by HTML tags attribute (think base=/).
3146 Instead, add the basedir of the actual filename loaded.
3147 This might be /tmp for konqueror plugin, or none for npapi
3148 plugin (loads from stdin). Using the basedir helps testing
3149 where you have required data in the same dir of the main
3150 movie. -u, -U, -P base=x do not modify the local sandbox
3153 2007-12-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3155 * libamf/sol.cpp: use correct delete[].
3157 2007-12-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3159 * libbase/rc.cpp: fix lld format.
3160 * doc/C/usermanual/usage/gnashrc.xml: document flashSystemOS,
3161 flashSystemManufacturer, SOLSafeDir, SOLReadOnly.
3163 2007-12-26 Rob Savoye <rob@ripple.welcomehome.org>
3165 * testsuite/misc-swfc.all/Makefile.am: Use SUFFIXES so the
3166 translation rule works. Use $(SANE_SCTESTS_OUT) instead of the
3169 2007-12-26 Sandro Santilli <strk@keybit.net>
3171 * server/asobj/NetConnection.cpp: implement NetConnection.isConnected
3172 * testsuite/actionscript.all/NetConnection.as: first pass of cleanup,
3173 lots to be done still...
3175 2007-12-26 Sandro Santilli <strk@keybit.net>
3177 * libbase/rc.{cpp,h}: add support for an urlOpenerFormat directive.
3178 * server/vm/ASHandlers.cpp (CommonGetUrl): use new
3179 RcInitFile::geURLOpenerFormat() method to obtain command to
3180 use for opening an external url. See bug #21155.
3181 * doc/C/usermanual/usage/gnashrc.xml: document new urlOpenerFormat
3183 * testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test urlOpenerFormat
3186 2007-12-26 Sandro Santilli <strk@keybit.net>
3188 * server/edit_text_character.cpp (format_text): don't truncate
3189 or word-wrap long lines if autoSize is on.
3191 2007-12-26 Sandro Santilli <strk@keybit.net>
3193 * server/: movie_instance.cpp, sprite_instance.{cpp,h}:
3195 * testsuite/actionscript.all/: MovieClip.as, MovieClipLoader.as:
3196 Update expected results.
3198 2007-12-26 Sandro Santilli <strk@keybit.net>
3200 * testsuite/swfdec/gen_run_swfdec_testsuite.sh: skip tests requiring
3201 user interaction (see task #7556).
3202 * testsuite/actionscript.all/MovieClip.as: add test for _lockroot
3204 * server/: sprite_instance.cpp, as_environment.cpp,
3205 namedStrings.{cpp,h}:
3206 Add PROP_uROOT and PROP_uGLOBAL
3208 2007-12-25 Rob Savoye <rob@ripple.welcomehome.org>
3210 * configure.ac: Add new security settings.
3212 * libbase/rc.{cpp,h}: Add new security options for Shared Objects
3213 and Local Connections. Make extractNumber() return a uint32_t
3214 intead of just an int as we keep overflowing strtol().
3215 * server/asobj/SharedObject.cpp: Use new security options for
3216 files. Return null for strings instead of undefined.
3218 2007-12-25 Sandro Santilli <strk@keybit.net>
3220 * server/asobj/MovieClipLoader.cpp: remove dead code.
3221 * testsuite/actionscript.all/MovieClipLoader.as: add test for
3224 2007-12-25 Zou Lunkai <zoulunkai@gmail.com>
3226 * server/movie_root.cpp: flushHigherPriorityActionQueues(), only flush when
3227 we are processing an actions queue; notify_key_listeners(),notify_mouse_listeners(),
3228 executeTimers, process queued actions after finish all event handlers.
3229 * testsuite/misc-ming.all/key_event_test.c,
3230 testsuite/misc-swfc.all/gotoFrameFromInterval.sc, gotoFrameFromInterval2.sc:
3233 2007-12-24 Rob Savoye <rob@ripple.welcomehome.org>
3235 * server/asobj/SharedObject.cpp: Include cerrno.
3236 * libamf/sol.cpp: Include cerrno.
3237 * configure.ac: Add --with-shm= option to specify whether to use
3238 POSIX named shared memory or the older SYSV shared memory for
3239 compatibility. Look for the remap() function in libc.
3241 2007-12-24 Sandro Santilli <strk@keybit.net>
3243 * server/as_object.{cpp,h}: callMethod with 4 args..
3244 * server/asobj/MovieClipLoader.cpp: dispatch events to all listeners,
3245 not just self. Fixes bug #21881.
3246 * testsuite/actionscript.all/MovieClipLoader.as: test that a
3247 MovieClipLoader instance is a listener of self.
3249 2007-12-24 Sandro Santilli <strk@keybit.net>
3251 * server/sprite_instance.cpp (get_member): use get_root() to evaluate
3252 the _root member. This is to get relative url rather then absolute,
3253 more correct in swf6 and should be easier to handle _lockroot for
3255 * testsuite/misc-mtasc.all/level99.as: add test for "_root" and
3256 '/path' resolution in levels.
3258 2007-12-24 Zou Lunkai <zoulunkai@gmail.com>
3260 * server/as_value.{h, cpp}: ~as_value(), don't inline the destructor.
3261 * server/as_environment.{h, cpp}: popCallFrame(), don't inline this function.
3262 fix the 'link once' problem here with -O2 option.
3264 2007-12-24 Markus Gothe <nietzsche@lysator.liu.se>
3266 * Santa Claus is coming to town.
3267 * libbase/utility.h: Fixed isfinte -> std::isfinite. Fixes building issue on OS X Leopard.
3269 2007-12-23 Sandro Santilli <strk@keybit.net>
3271 * testsuite/misc-ming.all/DragDropTest.as: add eval(_droptarget)
3274 2007-12-23 Sandro Santilli <strk@keybit.net>
3276 * server/dlist.h: const version of visitBackward.
3277 * server/character.h: add virtual findDropTarget method.
3278 * server/character.cpp (computeTargetPath): include _levelX prefix
3279 when topmost movie is not _level0.
3280 * server/movie_root.{cpp,h}: if a character is being dragged
3281 find it's current _droptarget on mouse move.
3282 * server/sprite_instance.{cpp,h}: implement findDropTarget.
3283 * testsuite/misc-ming.all/DragDropTest.as: no more failures.
3284 * testsuite/misc-mtasc.all/: level5.as, level99.as:
3285 add test for _target member of clips inside _level#.
3287 2007-12-23 Sandro Santilli <strk@keybit.net>
3289 * testsuite/actionscript.all/MovieClipLoader.as: stop() before
3290 invoking the tests chaing. This is to workaround bogus blocking
3291 MovieClipLoader.loadClip of Gnash.
3292 * utilities/dumpshm.cpp: ISO C++ forbids variable-size array 'buf'
3295 2007-12-22 Rob Savoye <rob@ripple.welcomehome.org>
3297 * utilities/dumpshm.cpp: Add support to dump LocalConnection files
3298 if they live in the older SYSV memory segments, instead of the
3299 more modern POSIX style.
3301 2007-12-21 Udo Giacomozzi <udo.gnu@nova-sys.net>
3303 * extensions/fileio/fileio.{h,cpp}: Implement asyncmode() so that the
3304 extension can be used with device drivers. Fix fgetc() to return
3307 2007-12-21 Sandro Santilli <strk@keybit.net>
3309 * testsuite/misc-ming.all/: DragDropTest.as,
3310 DragDropTestRunner.cpp: improved the test to verify
3311 persistance of _droptarget after stopDrag().
3313 2007-12-21 Sandro Santilli <strk@keybit.net>
3315 * server/as_object.h: provide const versions of to_movie()
3317 * testsuite/misc-ming.all/DragDropTest.as: fix expected
3319 * testsuite/misc-ming.all/: Makefile.am, DragDropTestRunner.cpp:
3320 Implemented test runner for DragDropTest.swf and enabled it.
3322 2007-12-21 Sandro Santilli <strk@keybit.net>
3324 * testsuite/misc-ming.all/: Makefile.am, DragDropTest.as:
3325 Self-explaining testcase for _droptarget. Requires user
3326 interaction so will need a MovieTester based runner to
3327 be automated. Pretty nice test, give it a try ;P
3329 2007-12-21 Sandro Santilli <strk@keybit.net>
3331 * server/sprite_instance.cpp (sprite_startDrag): get the bounding box
3334 2007-12-20 Sandro Santilli <strk@keybit.net>
3336 * server/asobj/MovieClipLoader.cpp: don't abort if getProgress
3337 is called w/out an argument, make the members of returned object
3339 * testsuite/actionscript.all/MovieClipLoader.as: test
3340 MovieClipLoader.getProgress.
3342 2007-12-20 Rob Savoye <rob@ripple.welcomehome.org>
3344 * server/asobj/SharedObject.cpp: Use the domain name as part of the
3345 path for the .sol files. This avoids name collision. Create all
3346 the directory components in the path name if they don't exist.
3348 2007-12-20 Sandro Santilli <strk@keybit.net>
3350 * libbase/LoadThread.h: add warnings about getBytesTotal() use
3351 and a call for better documenting current behaviour.
3352 * server/asobj/xml.cpp (checkLoad): drop the assertion completely
3353 and substitute with a check & log_debug. The assertion was
3354 about LoadThread::getBytesTotal() returning a number which would
3355 be fully available for a singleLoadThread::read() to consume...
3357 2007-12-20 Sandro Santilli <strk@keybit.net>
3359 * server/asobj/xml.cpp (checkLoad): fixed typo in an assertion.
3361 2007-12-20 Sandro Santilli <strk@keybit.net>
3363 * server/asobj/xmlnode.cpp: make XMLNode.attributes
3365 * testsuite/actionscript.all/XML.as: test enumerability
3366 of XMLNode.attributes.
3368 2007-12-20 Sandro Santilli <strk@keybit.net>
3370 * server/asobj/xmlnode.cpp: attributes are note instances
3372 * testsuite/actionscript.all/XML.as: few more fixes.
3374 2007-12-20 Sandro Santilli <strk@keybit.net>
3376 * server/asobj/xml.{cpp,h}: don't abort on XML.load() [ no args ].
3377 Engage a thread for each load request.
3378 * testsuite/actionscript.all/XML.as: the test is now sane, and
3379 have few more successes.
3380 * libbase/LoadThread.{cpp,h}: (setupCache) fix current position
3381 and _completed computation, (reset) join thread.
3383 2007-12-20 Rob Savoye <rob@ripple.welcomehome.org>
3385 * server/asobj/SharedObject.cpp: Make less verbose, don't dump
3386 members after reading.
3387 * libamf/amf.cpp: Check for a corrupted length field so we don't
3388 try to memcpy() an obscene amount of data...
3389 * libamf/sol.cpp: Handle an error from trying to parse corrupted
3390 .sol files so we don't core dump.
3391 * testsuite/actionscript.all/SharedObject.as: Test the new values
3392 against the previous ones we just wrote.
3394 * server/asobj/SharedObject.cpp: Get rcinit file, and use the
3395 SOLSafeDir setting, or defaul tto "./", for all SOL file
3396 locations. This now can both write and read SOL files.
3397 * testsuite/actionscript.all/SharedObject.as: Test for the values
3398 gotten from the SOL file so we know we parsed it correctly.
3399 * libamf/amf.cpp: Don't swap numbers twice.
3400 * libamf/sol.cpp: Don't swap numbers when dumping, they should be
3401 in the correct byte order by default.
3403 2007-12-20 Sandro Santilli <strk@keybit.net>
3405 * testsuite/actionscript.all/XML.as:
3406 Cleanup the test to actually check calls to onLoad handler.
3407 Gnash is failing, and I didn't bother to use xcheck as I plan
3408 to do more work on it later.
3410 2007-12-20 Udo Giacomozzi <udo.gnu@nova-sys.net>
3412 * gui/fbsup.h, gui/fb.cpp: Calculate rowsize from virtual resolution
3413 instead from visible resolution
3415 2007-12-20 Sandro Santilli <strk@keybit.net>
3417 * server/as_object.cpp: implement callMethod taking 3 args.
3418 * server/asobj/MovieClipLoader.cpp: cleanup interfaces, send
3419 all required events (altought still not in async mode).
3420 * testsuite/actionscript.all/MovieClipLoader.as: test events
3423 2007-12-19 Rob Savoye <rob@ripple.welcomehome.org>
3425 * utilities/soldumper: Dump the contents of any .sol file. Useful
3426 to know what's being stored about you in binary files.
3427 * utilities/Makefile.am: Add soldumper.
3429 2007-12-19 Sandro Santilli <strk@keybit.net>
3431 * server/asobj/SharedObject.cpp: make SharedObject.flush more
3432 robust, reduce string_table lookups in PropsSerializer, cleanup
3433 class initialization and SharedObject constructor.
3434 * libamf/amf.{cpp,h} (createElement): take element names by
3437 2007-12-19 Sandro Santilli <strk@keybit.net>
3439 * server/as_value.{cpp,h}: turn SpriteProxy to a generic
3440 CharacterProxy, keep all characters by soft-refs.
3441 * server/character.h: expose a getOrigTarget and provide
3442 a saveOriginalTarget to subclasses intended to be called by
3443 stage placement callbacks.
3444 * server/button_character_instance.cpp, server/movie_instance.cpp,
3445 server/sprite_instance.{cpp,h}, video_stream_instance.cpp:
3446 Call saveOriginalTarget from the overridden stagePlacementCallback.
3447 * testsuite/DummyCharacter.h, testsuite/server/DisplayListTest.cpp:
3448 make DummyCharacter take a 'parent' argument, to avoid failing
3449 an assertion in getTarget checking for characters with no parent
3450 to be in effect of the movie_instance class of derivates.
3451 * testsuite/server/Makefile.am: don't let failures in server
3452 testsuite interrupt the check run.
3453 * testsuite/simple.exp: comment units of the timeout
3454 * testsuite/actionscript.all/TextField.as: soft-ref tests succeed.
3456 2007-12-19 Rob Savoye <rob@ripple.welcomehome.org>
3458 * server/asobj/SharedObject.cpp: Add handler for properties
3459 visitor function. Handle "undefined" values when encoding into
3461 * libamf/amf.cpp: Comment out function traces.
3462 * libamf/sol.cpp: Trap undefiend filespec.
3464 2007-12-19 Sandro Santilli <strk@keybit.net>
3466 * server/edit_text_character.{cpp,h}:
3467 implement removeTextField().
3468 * testsuite/actionscript.all/TextField.as: update expected
3469 results (2 xpass, 2 fail - used to suceed by luck).
3471 2007-12-19 Sandro Santilli <strk@keybit.net>
3473 * testsuite/actionscript.all/TextField.as: add tests for
3474 TextField soft references (unimplemented in Gnash).
3476 2007-12-19 Sandro Santilli <strk@keybit.net>
3478 * server/edit_text_character.cpp: implement getDepth()
3479 * server/sprite_instance.cpp make createTextField more
3480 tolerant and correct about parameters.
3481 * testsuite/actionscript.all/TextField.as: add more
3482 createTextField tests (uhm.. should be in MovieClip.as)
3485 2007-12-18 Rob Savoye <rob@ripple.welcomehome.org>
3487 * testsuite/actionscript.all/SharedObject.as: Test creating a .sol
3488 file and reading it back in. This test is still somewhat bogus, as
3489 it mostly just makes sure everything exists.
3491 * libamf/sol.h: Add overloaded writeFile with no args that uses
3492 only private data. Add accessors for filespec and the object
3494 * server/asobj/SharedObject.{cpp,h}: Add support for
3495 PropertyLists. Implement flush, getLocal, and getSize().
3497 2007-12-18 Sandro Santilli <strk@keybit.net>
3499 * server/array.cpp (array_new): drop an absurdly complex and unneeded
3500 round trip to set initial array size. Makes PlanarityBig5 go to
3501 level 15 in a second or two. See
3502 http://wiki.gnashdev.org/wiki/index.php/PlanarityProfile.
3504 2007-12-18 Sandro Santilli <strk@keybit.net>
3506 * server/array.cpp: slightly reduced string_table::find calls.
3507 * server/as_object.{h,cpp}: rename visitProperties to
3508 visitPropertyValues, use it from copyProperties.
3510 2007-12-18 Sandro Santilli <strk@keybit.net>
3512 * server/as_object.h: add a visitProperties templated method.
3513 * server/edit_text_character.{cpp,h}: allow TextField.variable
3514 to point to a normal object, not fully correct yet but a minimal
3516 * testsuite/actionscript.all/TextField.as: 2 small successes.
3518 2007-12-18 Sandro Santilli <strk@keybit.net>
3520 * doc/C/extensions.xml: gave a review of how to create extensions.
3521 Should be a currently correct way of doing it.
3522 * server/character.cpp (destroy): make sure to set the _unloaded
3523 flag to avoid leaks (Fixes bug #21842).
3525 2007-12-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3527 * libbase/rc.{h,cpp}: add settings to gnashrc. Override
3528 System.capabilities.os: "set flashSystemOS The OS SUPER PREMIUM
3530 Override System.capabilities.manufacturer: "set flashSystemManufacturer
3532 Maximum movie library size: "set movieLibraryLimit 3"
3533 (defaults to 8, not yet used).
3535 2007-12-18 Sandro Santilli <strk@keybit.net>
3537 * gui/gtk.cpp (run): set interval timeout here rather then on
3538 set_interval, and advance once before that. This drops the
3539 annoying FPS-based delay on start.
3541 2007-12-18 Udo Giacomozzi <udo.gnu@nova-sys.net>
3543 * server/impl.cpp: limit media library size to 8 entries and keep
3546 2007-12-18 Sandro Santilli <strk@keybit.net>
3548 * testsuite/actionscript.all/TextField.as: add a test and check total
3550 * configure.ac: point to AGG website when warning about old version.
3551 * testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c:
3552 Found out the "toString not invoked" was a bogus deduction.
3553 Added checking of total tests run.
3555 2007-12-17 Sandro Santilli <strk@keybit.net>
3557 * testsuite/actionscript.all/TextField.as: test maxChars having
3558 no effect on code-assigned text.
3559 * server/as_environment.h: drop obsoleted interfaces.
3561 2007-12-17 Rob Savoye <rob@ripple.welcomehome.org>
3563 * cygnal/testsuite/cygnal.all/Makefile.am: Add server to include
3565 * libamf/amf.{cpp,h}: Include as_object.h. Don't make swapBytes()
3566 static, we want to use it elsewhere. Add methods for creating
3567 elements, and encoding elements.
3568 * libamf/sol.cpp: Store elements in a vactor as they get
3569 added. Format a header for a .sol file. Write a SOL object to disk
3571 * libamf/sol.h: Use boost cstdint.hpp instead of homegrown
3572 typedefs. Write a SOL object to disk as an .sol file.
3573 * testsuite/libamf.all/test_sol.cpp: Include as_object.h. Create
3574 an output file and test all it's elements.
3576 2007-12-17 Sandro Santilli <strk@keybit.net>
3578 * server/parser/action_buffer.cpp: don't be noisy about overriding
3580 * gui/gui.cpp, server/movie_root.{cpp,h}, testsuite/MovieTester.cpp,
3581 utilities/processor.cpp: drop argument from movie_root::advance.
3583 2007-12-17 Sandro Santilli <strk@keybit.net>
3585 * server/as_environment.h: drop push_val, make push non-templated
3586 and taking an as_value. I belive this drops a copy-construction
3587 of as_value for every push use ...
3588 * extensions/gtk2/gtkext.cpp, server/as_function.cpp,
3589 server/asobj/NetStream.cpp, server/vm/ASHandlers.cpp: replace
3590 the few push_val calls with push.
3592 2007-12-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3594 * plugin/plugin.cpp: change NPAPI error messages so as not to
3595 annoy Opera users (doesn't make it work on Opera, unfortunately),
3596 general code cleanup.
3597 * plugin/plugin.cpp (second commit): more cleanup.
3599 2007-12-17 Sandro Santilli <strk@keybit.net>
3601 * server/asobj/: Sound.{cpp,h}, SoundFfmpeg.{cpp,h},
3602 SoundGst.{cpp,h}: don't copy the string passed to loadSound.
3604 2007-12-17 Sandro Santilli <strk@keybit.net>
3606 * testsuite/libamf.all/test_object.cpp: ISO C++ forbids variable-size
3609 2007-12-17 Sandro Santilli <strk@keybit.net>
3611 * testsuite/MovieTester.{cpp,h}: use a manual clock, to make
3612 time predictable. Expose an additional advanceClock method
3613 to control it (one way)
3614 * testsuite/misc-ming.all/intervalTestRunner.cpp: use advanceClock
3615 instead of unpredictable usleep() calls.
3617 2007-12-17 Sandro Santilli <strk@keybit.net>
3619 * testsuite/actionscript.all/case.as: fix testcase, add test for
3622 2007-12-17 Sandro Santilli <strk@keybit.net>
3624 * gui/: gtk.cpp, gtksup.h: grab focus on click.
3625 Fixes bug #21808. Thanks Benjamin Wolsey for research
3628 2007-12-17 Zou Lunkai <zoulunkai@gmail.com>
3630 * testsuite/misc-ming.all/new_child_in_unload_test.c, Makefile.am:
3631 new test for inspecting ::destroy(). We may want to destroy an character
3632 that is not unloaded.
3633 * server/character.cpp: remove the assertion in charcter::destroy(),
3634 it's not correct as tests confirmed.
3636 2007-12-16 Sandro Santilli <strk@keybit.net>
3638 * server/vm/ASHandlers.cpp (ActionImplementsOp):
3639 Don't assume values found on stack are all functions.
3642 2007-12-16 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3644 * gui/Player.cpp: allow setting base URL with -P (to support
3645 <embed base="myurl"> tag; move parsing of flashvars and query
3646 string before the base URL gets set.
3648 2007-12-15 Rob Savoye <rob@ripple.welcomehome.org>
3650 * testsuite/libamf.all/test_sol.cpp: When reading a SOL file,
3651 test for multiple elements of varying data types.
3652 * testsuite/libamf.all/Makefile.am: rather than generate the .sol
3653 files, these are now checked in, so we don't havwe to build them.
3655 2007-12-15 Sandro Santilli <strk@keybit.net>
3657 * testsuite/Makefile.am: fix abs_mediadir for gnashrc generation.
3658 * testsuite/misc-swfmill.all/initaction_in_definesprite.xml:
3659 more automation, and more to do.
3661 2007-12-14 Rob Savoye <rob@ripple.welcomehome.org>
3663 * libamf/sol.{cpp,h}: New files for Shared Object file support.
3664 * libamf/Makefile.am: Build sol into libamf.
3665 * libamf/amf.{cpp,h}: Use cstdint for data types.
3666 * libamf/protocol.h: Define an enum for protocols supported.
3667 * testsuite/libamf.all/Makefile.am: Add test_sol. Build .sol files
3669 * testsuite/libamf.all/test_*.cpp: Use cstdint for data types.
3670 * testsuite/libamf.all/settings.sol:
3671 * testsuite/libamf.all/xmlfiles: Directory for xml files to
3672 recreate .sol files.
3673 * testsuite/libamf.all/xmlfiles/array.xml, date.xml, number.xml,
3674 settings.xml, test.xml, xml.xml, boolean.xml, null.xml,
3675 object.xml, string.xml, undefined.xml: New XML files to generate
3676 .sol files using s2x.py.
3677 * testsuite/libamf.all/solfiles/array.sol, date.sol, number.sol,
3678 settings.sol, test.sol, boolean.sol, null.sol,
3679 object.sol, string.sol, undefined.sol: New binary SOL files for
3681 * testsuite/libamf.all/test_sol.cpp: Test case for SOL support.
3682 * configure.ac: Look for python so we can use it for testing.
3684 2007-12-14 Sandro Santilli <strk@keybit.net>
3686 * server/swf/tag_loaders.cpp: immediately store bitmap_character_def
3687 instances into an instrusive_ptr to make add_bitmap_character_def
3688 calls safe. Should fix bug #21377.
3690 2007-12-14 Sandro Santilli <strk@keybit.net>
3692 * server/parser/shape_character_def.cpp: fix compiler warnings,
3693 one of which about possible use of uninitialized value...
3695 2007-12-14 Sandro Santilli <strk@keybit.net>
3697 * server/sprite_instance.{cpp,h},
3698 server/parser/movie_def_impl.{cpp,h},
3699 server/parser/movie_definition.h,
3700 server/parser/sprite_definition.h:
3701 Remove dead init actions code.
3703 2007-12-14 Sandro Santilli <strk@keybit.net>
3705 * gui/gui.cpp, server/as_environment.cpp, server/as_value.cpp,
3706 server/character.cpp, server/character.h,
3707 server/movie_instance.cpp, server/movie_instance.h,
3708 server/movie_root.h, server/sprite_instance.cpp,
3709 server/sprite_instance.h, server/swf_function.cpp,
3710 server/asobj/Object.cpp, server/vm/ASHandlers.cpp:
3711 Drop duplicated character::get_root_movie(), which does the same as
3712 character::get_root(); drop movie_root::get_root_movie, use the
3713 new getRootMovie name.
3715 2007-12-14 Sandro Santilli <strk@keybit.net>
3717 * server/swf/DoInitActionTag.h: store referenced character
3718 in the instance, pass to execute_init_actions when
3719 executing; add self as a normal control tag.
3720 * server/movie_instance.h: maintain a set of 'initialized'
3721 characters (characters referenced by executed DoInitAction
3723 * server/sprite_instance.{cpp,h} (execute_init_action):
3724 update the movie_instance maintained set of initialized
3725 characters and use that set to figure out whether or not
3726 to execute them again.
3727 * testsuite/misc-swfmill.all/Makefile.am: expect a success
3728 for initaction in definesprite test.
3730 2007-12-14 Sandro Santilli <strk@keybit.net>
3732 * testsuite/misc-swfmill.all/: Makefile.am,
3733 initaction_in_definesprite.xml: test that DOINITACTION
3734 tags in sprite definitions are valid, and that whether or
3735 not an INITACTION tag was executed should be registered
3736 in the definition being referenced.
3738 2007-12-14 Sandro Santilli <strk@keybit.net>
3740 * server/stream.cpp (read): don't allow block reads to cross
3743 2007-12-14 Sandro Santilli <strk@keybit.net>
3745 * libmedia/FLVParser.h: drop comma at end of enumerator list
3746 * server/swf/tag_loaders.cpp: provide a 'tell' function to
3748 * libbase/jpeg.{cpp,h}: get a max header bytes parameter to limit
3749 input stream. Currently only used to skip a 0-sized header
3750 while still allowing further parsing of DEFINEBITS tag.
3751 * server/swf/tag_loaders.cpp: pass max header bytes when parsing
3752 JPEGTABLES. Fixes the 0-length JPEGTABLES tag (missing a testcase).
3754 2007-12-14 Sandro Santilli <strk@keybit.net>
3756 * testsuite/movies.all/Makefile.am: don't abort on failure.
3758 2007-12-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3760 * server/asobj/SoundFfmpeg.cpp: fix a segfault in getPosition()
3761 when no audio stream is found.
3763 2007-12-14 Zou Lunkai <zoulunkai@gmail.com>
3765 * testsuite/misc-ming.all/runtime_vm_stack_test.c, Makefile.am:
3766 new test for inspecting runtime vm stack.
3768 2007-12-13 Sandro Santilli <strk@keybit.net>
3770 * server/parser/button_character_def.{cpp,h}: don't leak
3771 button action buffers.
3772 * server/button_character_instance.cpp: update access to
3773 button actions (needs more isolation work).
3775 2007-12-13 Sandro Santilli <strk@keybit.net>
3777 * server/Property.h: always initialize mOrderId, which is used
3778 as the key for secondary multi_index in PropertyList.
3779 Seems to fix the infamous conditional jumps based on uninitialized
3780 values and with it the occasional assertion failure.
3783 2007-12-13 Rob Savoye <rob@ripple.welcomehome.org>
3785 * cygnal/http.h: Rename getFileType() to getFileStats()
3786 * cygnal/http.cpp: Set the file size right so it works with all
3788 * cygnal/cygnal.cpp: Use getFileStats() instead of getFileType().
3790 * cygnal/cygnal.cpp: Check the file type to set the HTTP
3791 Content-Tytpe field correctly. Also handle "file not found".
3792 * cygnal/http.cpp: Trap file not found errors. Format responses
3793 correctly, including a 404 error. Make all fields with multiple
3795 * cygnal/http.h: Add an ERROR for file type. Stash the message
3796 body and filesize as private data.
3797 * cygnal/testsuite/cygnal.all/test_crc.cpp: Use the global LogFile
3798 instance so verbosity works.
3799 * cygnal/testsuite/cygnal.all/test_http.cpp: Use the global
3800 LogFile instance so verbosity works. Test responses.
3802 2007-12-13 Sandro Santilli <strk@keybit.net>
3804 * server/PropertyList.cpp (addGetterSetter): since the function
3805 always returns true, which by documentation means the property
3806 was successfully added, this patch adds an assertion checking
3807 that the just-added property can be successfully looked up.
3808 This assertion seems to fail, so the commit makes Gnash less
3809 robust, but hopefully helps fixing the bug which we keep
3810 occasionally finding. Over here, I can trigger failure of that
3811 assertion by running testsuite/misc-ming.all/loop_test-Runner
3812 (but oddly enough not playing loop_test.swf using Gnash).
3814 2007-12-13 Sandro Santilli <strk@keybit.net>
3816 * server/parser/video_stream_def.cpp (readDefineVideoFrame): fix
3817 log_debug call (missing params).
3818 * backend/render_handler_agg.cpp, libbase/string_table.h,
3819 server/Property.{cpp,h}, server/PropertyList.{cpp,h},
3820 server/parser/abc_block.{cpp,h}:
3821 Fix -pedantic errors, make sure PropertyList always initialize
3822 all members. Unfortunately, this doesn't fix the valgrind-reported
3823 conditional jumps based on uninitialized memory.
3825 2007-12-13 Sandro Santilli <strk@keybit.net>
3827 * server/swf/tag_loaders.cpp (jpeg_tables_loader): don't limit
3828 StreamAdapter input as the *same* jpeg loader will be used
3829 to parse subsequent tags. This reintroduces possible seek-backs
3830 but fixes regressions in elvis.swf and strip.swf (bug #21786).
3831 We'll need to rethink the robustness issue for jpeg loading.
3833 2007-12-13 Sandro Santilli <strk@keybit.net>
3835 * server/parser/action_buffer.{cpp,h}: drop readFullTag(),
3836 get additional arg to read() to limit input stream.
3837 * server/parser/button_character_def.{cpp,h}: limit input
3838 stream while reading button_actions.
3839 * server/swf/: DoActionTag.h, DoInitActionTag.h,
3840 PlaceObject2Tag.cpp: update calls to action_buffer parser.
3842 2007-12-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3844 * server/asobj/Global.cpp: put return in updateAfterEvent();
3846 2007-12-13 Sandro Santilli <strk@keybit.net>
3848 * testsuite/actionscript.all/System.as: serverString exists now.
3850 2007-12-13 Zou Lunkai <zoulunkai@gmail.com>
3852 * server/asobj/Global.cpp: as_global_parseint(), ignore more leading
3855 2007-12-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3857 * libbase/URL.{h,cpp}: add another encode() function to return
3858 a new escaped string.
3859 * server/asobj/System.cpp: implement capabilities.serverString.
3861 2007-12-12 Rob Savoye <rob@ripple.welcomehome.org>
3863 * cygnal/http.{cpp,h}: Extract the fields with multiple values
3864 into arrays, instead of just extracting the whole string.
3865 * cygnal/testsuite/cygnal.all/test_http.cpp: Test for multiple
3866 values in HTTP header fields.
3868 2007-12-12 Sandro Santilli <strk@keybit.net>
3870 * server/parser/button_character_def.cpp (readDefineButton2):
3871 don't attempt to read button actions if there are none..
3873 2007-12-12 Rob Savoye <rob@ripple.welcomehome.org>
3875 * configure.ac: Disable LIRC by default. Link cygnalrc test file
3876 to copy in source tree.
3877 * libbase/rc.h: Add new accessors so we can set private data from
3878 a derived class. Make constructor/destructor protected instead of
3880 * cygnal/crc.{cpp,h}: Cygnal specific init file derived from Gnash
3881 RcInitFile to avoid bloating out Gnash's init file handling for
3882 options it'll never use, but also let Cygnal share those values,
3884 * cygnal/Makefile.am: Add crc.cpp and crc.h.
3885 * cygnal/cygnal.cpp: Use new init file. Clean up port offset
3887 * cygnal/testsuite/cygnal.all/cygnalrc.in: Test cygnal init file.
3888 * cygnal/testsuite/cygnal.all/test_crc.cpp: Test the Cygnal init
3890 * cygnal/testsuite/cygnal.all/Makefile.am: Add test_crc target.
3892 2007-12-12 Sandro Santilli <strk@keybit.net>
3894 * server/parser/button_character_def.{cpp,h}: cleanup parser by
3895 splitting DEFINEBUTTON, DEFINEBUTTON2 and DEFINEBUTTONSOUND
3896 reading functions. Added a boundary arg to button_record parser
3897 to avoid reading out of bounds (with side-effect of reducing
3900 2007-12-12 Sandro Santilli <strk@keybit.net>
3902 * testsuite/actionscript.all/System.as: update expected results.
3903 * server/swf/tag_loaders.cpp (define_bits_jpeg3_loader): don't read
3904 rgb data past alpha_position.
3906 2007-12-12 Sandro Santilli <strk@keybit.net>
3908 * server/swf/tag_loaders.cpp (read_jpeg_tables): survive malformed swf
3909 with empty JPEGTABLES tag.
3910 * server/swf/tag_loaders.cpp (StreamAdapter::readFunc): don't attempt
3911 to fetch 0 bytes from underlying stream... Fixes bug #21779.
3913 2007-12-12 Sandro Santilli <strk@keybit.net>
3915 * libmedia/sound_handler.h: add a reset() method to put
3916 the sound handler in starting conditions (for movie restart).
3917 * libmedia/gst/sound_handler_{gst,sdl}.{cpp,h}: implement reset()
3918 * server/movie_root.cpp (restart): reset sound handler if any.
3920 2007-12-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
3922 * server/asobj/System.cpp: implement language, hasAudio; find os
3924 * libbase/rc.{h,cpp}: do not set _flashSystemOS by default; doing
3925 so overrides runtime OS detection.
3926 * server/vm/VM.{h,cpp}: add methods to retrieve current OS and
3927 current language for System.capabilities.
3928 * configure.ac: test for sys/utsname.h (for system information).
3930 2007-12-12 Sandro Santilli <strk@keybit.net>
3932 * server/swf/tag_loaders.cpp: add support for limiting reads from
3933 the tu_file StreamAdapter (bitmaps parsing).
3934 * server/asobj/Global.cpp: stub updateAfterEvent().
3935 * testsuite/actionscript.all/Global.as: one more test for
3938 2007-12-12 Sandro Santilli <strk@keybit.net>
3940 * configure.ac: define DEFAULT_FLASH_PLATFORM_ID and
3941 DEFAULT_FLASH_SYSTEM_OS based on $host (should likely
3942 be based on $target or something similar, to check
3943 when cross compiling)
3944 * libbase/rc.{cpp,h}: add getFlashVersionString() and
3945 getFlashSystemManufacturer() methods. Currently there's
3946 no .gnashrc label for them, which are instead only initialized
3947 based on values detected at configure time.
3948 * server/asobj/System.{cpp,h}: delegate System.capabilities.os
3949 and System.capabilities.manufacturer to RcInitFile.
3951 2007-12-12 Sandro Santilli <strk@keybit.net>
3953 * testsuite/libbase/Makefile.am: actually run the IntTypesTest.
3955 2007-12-12 Zou Lunkai <zoulunkai@gmail.com>
3957 * server/button_character_instance.cpp: stagePlacementCallback(), don't
3958 forget to set charcter depth and id.
3959 * server/swf/PlaceObject2Tag.cpp: readPlaceObject2() and readPlaceObject3(),
3960 replace 8 read_bit() with one read_u8().
3961 * server/sprite_instance.{h,cpp}: clone_display_object(), remove dead function.
3963 2007-12-12 Sandro Santilli <strk@keybit.net>
3965 * server/asobj/System.cpp: add System.capabilities properties
3966 os, playerType and manufactorer. Would need a real implementation
3967 as this is just a placeholder.
3968 * testsuite/actionscript.all/System.as: test availability of
3969 known System.capabilities members.
3971 2007-12-12 Sandro Santilli <strk@keybit.net>
3973 * server/vm/ASHandlers.cpp (ActionGetMember): print ascoding error
3974 if trying to reference unexisitng object member.
3975 * testsuite/misc-swfc.all/Makefile.am: use double quotes to allow for
3976 abs_mediadir to expand.
3978 2007-12-12 Zou Lunkai <zoulunkai@gmail.com>
3980 * server/sprite_instance.cpp: don't restart an unloaded character,
3983 2007-12-11 Sandro Santilli <strk@keybit.net>
3985 * server/as_function.cpp: don't set function prototypes
3986 to Function.prototype in SWF < 6.
3987 * server/asobj/: ClassHierarchy.cpp, Global.cpp: initialize
3988 string class manually, seems to be some special thing.
3989 * testsuite/actionscript.all/: Function.as, String.as: successes
3990 in prototype checking for swf5.
3992 2007-12-11 Sandro Santilli <strk@keybit.net>
3994 * testsuite/swfdec/PASSING: sync with master git.
3995 * server/swf_event.h: leave ownership of action_buffer to the
3996 caller as a single action buffer can be triggered by multiple
3998 * server/swf/PlaceObject2Tag.{cpp,h}: keep ownership of event
3999 action buffers, split PlaceObject2 and PlaceObject3 parser.
4001 2007-12-11 Sandro Santilli <strk@keybit.net>
4003 * server/swf/DisplayListTag.h: streamline included headers and
4004 forward declarations.
4005 * server/impl.cpp (create_jpeg_movie): fix log message format.
4007 2007-12-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4009 * testsuite/actionscript.all/Random.as: tests for distribution
4010 of all (pseudo-)random output; and for correctness of random(n)
4013 2007-12-11 Sandro Santilli <strk@keybit.net>
4015 * server/asobj/string.cpp: fix slice, register native functions,
4016 fix static vs. prototoype methods.
4017 * testsuite/actionscript.all/String.as: add more tests
4018 * testsuite/swfdec/PASSING: String.slice tests pass.
4020 2007-12-11 Sandro Santilli <strk@keybit.net>
4022 * server/swf/tag_loaders.cpp (sound_stream_head_loader): tolerate
4023 lack of a 'latency' field in MP3 stream. Fixes bug #21729.
4024 Note that Ming also reports the file to have the same problem
4025 so it may actually be malformed.
4026 * server/parser/shape_character_def.cpp (read): still read an
4027 additional byte even if fill and line bits are zero if we're
4028 reading a morph shape.
4030 2007-12-10 Rob Savoye <rob@ute.welcomehome.org>
4032 * cygnal/testsuite/cygnal.all/test_http.cpp: Add extracing fields
4033 from an HTTP header tests to go with the ones that create the same
4035 * cygnal/cygnal.cpp: Use a cygnal-dbg.log file instead of
4036 gnash-dbg.log. Use boost bind variables for all threads.
4037 * cygnal/http.{cpp,h}: Add methods for encoding HTTP header
4038 fields. Use a real date, instead of the bogus one. Check the file
4039 types to set the Content-Type HTTP field correctly.
4040 * cygnal/stream.cpp: Comment out lotsa debug messages.
4041 * cygnal/Makefile.am: Drop DIST_SUBDIRS, they don't compile
4042 for anything but win32 anyway. Add testsuite directory.
4043 * cygnal/testsuite: New testsuite directory. It's here rather than
4044 in gnash/testsuite since these tests are very different from
4045 ones gnash needs for most things.
4046 * cygnal/testsuite/Makefile.am: New Makefile for Cygnal test
4048 * cygnal/testsuite/cygnal.all: Cygnal specific test cases live
4050 * cygnal/testsuite/cygnal.all/Makefile.am: Build the test cases
4051 and run DejaGnu on them.
4052 * cygnal/testsuite/cygnal.all/test_http.cpp: Test case for HTTP
4054 * configure.ac: Add new cygnal/testsuite Makefiles.
4055 * cygnal/testsuite/simpe.exp: clone the one used currently for
4058 2007-12-10 Sandro Santilli <strk@keybit.net>
4060 * testsuite/actionscript.all/Makefile.am: fix abs_mediadir to
4061 contain quotes. Prior version failed building XML-*.swf files,
4062 dunno if this patch breaks POSIX compatibility.
4063 * utilities/processor.cpp: check for quit request right
4064 after calling movie_root::setRootMovie, as that would
4065 execute actions in first frame.
4066 * server/timers.{cpp,h}, server/asobj/Global.cpp: implement
4067 setTimeout/clearTimeout.
4068 * testsuite/actionscript.all/Global.as: test existance of
4069 setTiemout/clearTimeout.
4070 * testsuite/swfdec/PASSING: setTimeout-related successes.
4072 2007-12-10 Sandro Santilli <strk@keybit.net>
4074 * testsuite/actionscript.all/Makefile.am: fix abs_mediadir to contain
4075 quotes. Prior version failed building XML-*.swf files, dunno if this
4076 patch breaks POSIX compatibility.
4077 * testsuite/swfdec/PASSING: synced with master git.
4078 * testsuite/libamf.all/Makefile.am: don't abort if a test fails.
4079 (note that test_object smashes the stack since the change in
4082 2007-12-10 Sandro Santilli <strk@keybit.net>
4084 * server/button_character_instance.{cpp,h},
4085 server/character.h, server/impl.cpp,
4086 server/movie_instance.{cpp,h},
4087 server/movie_root.{cpp,h},
4088 server/sprite_instance.{cpp,h},
4089 server/video_stream_instance.{cpp,h}:
4090 Drop the delta time argument to character::advance,
4091 make sprite_instance::advance_sprite non-virtual,
4092 drop unused cache-related code in impl.cpp
4094 2007-12-10 Rob Savoye <rob@ute.welcomehome.org>
4096 * libbase/image.h: Include boost/cstdint.hpp to get uint8_t in a
4098 * gui/Makefile.am: Add am-frag to EXTRA_DIST.
4099 * libbase/log.cpp: Make hexify() handle CR/LF better. Cleanup the
4100 output to handle pure binary files.
4101 * asobj/Sound.cpp: Include sound_handler.h.
4102 * testsuite/Makefile.am: Cleanup non POSIX variable name
4104 * testsuite/actionscript.all/Makefile.am: Cleanup non POSIX
4105 variable name warnings.
4106 * testsuite/misc-swfc.all/Makefile.am: Cleanup non POSIX variable
4109 2007-12-10 Sandro Santilli <strk@keybit.net>
4111 * server/timers.h: _start must be a long.
4113 2007-12-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4115 * server/vm/VM.{h,cpp}: add randomNumberGenerator() to return
4116 pointer to a boost pseudo-RNG.
4117 * server/vm/ASHandlers.cpp: use boost RNG instead of tu_random
4119 * server/asobj/Math.cpp: use boost RNG instead of tu_random in
4121 * server/movie_root.cpp: remove calls to tu_random::next_random.
4122 * server/action.cpp: remove tu_random include.
4123 * libbase/tu_random{cpp,h}: removed.
4124 * libbase/Makefile: remove deleted files
4126 2007-12-10 Sandro Santilli <strk@keybit.net>
4128 * server/parser/movie_def_impl.cpp (readHeader): 0 FPS
4129 must be interpreted as max FPS (65535).
4130 * server/timers.{cpp,h}: evaluate object property name
4131 at execution, not initialization.
4132 * testsuite/swfdec/PASSING: setinterval2.swf passes.
4134 2007-12-10 Sandro Santilli <strk@keybit.net>
4136 * server/timers.cpp (expired): add interval to start time
4137 when expired (rather then using current time); expire
4138 also when start+interval == now.
4139 * testsuite/swfdec/PASSING: setinterval.swf succeeds.
4141 2007-12-09 Sandro Santilli <strk@keybit.net>
4143 * server/timers.{cpp,h}: let 0 be a valid start timer
4146 2007-12-08 Sandro Santilli <strk@keybit.net>
4148 * ManualClock.h: moved from testsuite to server
4149 * utilities/processor.cpp: use a manual clock for running
4151 * testsuite/swfdec/PASSING: setinterval-arguments succeeded.
4153 2007-12-07 Sandro Santilli <strk@keybit.net>
4155 * gui/NullGui.cpp (run): stop keeping CPU busy for nothing.
4156 * utilities/: parser.cpp, Makefile.am: drop gparser.
4158 2007-12-07 Sandro Santilli <strk@keybit.net>
4160 * server/vm/VM.{cpp,h}: take a VirtualClock at init time
4161 and use it from getTimer().
4162 * gui/Player.cpp: initialize the VM with SystemClock.
4163 * testsuite/: Makefile.am, ManualClock.h: manual clock
4165 * testsuite/MovieTester.{cpp,h}: initialize the VM
4167 * testsuite/server/: DisplayListTest.cpp,
4168 PropertyListTest.cpp: initialize the VM
4170 * utilities/processor.cpp: initialize the VM with
4173 2007-12-07 Udo Giacomozzi <udo.gnu@nova-sys.net>
4175 * testsuite/misc-swfc.all/gotoFrameFromInterval2.sc:
4176 new testcase for gotoAndPlay -> stop
4177 * testsuite/misc-swfc.all/gotoFrameFromInterval.sc:
4179 * testsuite/misc-swfc.all/gotoFrameLabelAsFunction.sc:
4180 new test for gotoAndPlay(label) *function*
4181 * server/sprite_instance.cpp: fix gotoAndXXX for frame labels
4183 2007-12-07 Sandro Santilli <strk@keybit.net>
4185 * server/: Makefile.am, SystemClock.{cpp,h}, VirtualClock.cpp:
4186 New VirtualClock virtual class and system time based implementation.
4188 2007-12-07 Sandro Santilli <strk@keybit.net>
4190 * testsuite/misc-ming.all/intervalTest.as: more self-contained
4191 tests, to reduce relying on MovieTester concept of time;
4193 2007-12-07 Zou Lunkai <zoulunkai@gmail.com>
4195 * server/character.h, sprite_instance.cpp, dlist.{h,cpp}:
4196 deprecate the TimelineInfor class, it's no longer needed in the
4197 new timeline control design.
4199 2007-12-06 Sandro Santilli <strk@keybit.net>
4201 * testsuite/misc-swfc.all/Dejagnu.sc: print __END_OF_TEST__
4202 and fscommand:quit in done(), call this.done() from totals()
4204 * testsuite/misc-swfc.all/Makefile.am: add consistency checks
4206 * testsuite/misc-swfc.all/: sound.sc, gotoFrameFromInterval.sc:
4207 Don't include check.sc, let Dejagnu.sc do that to avoid symbols
4210 2007-12-06 Udo Giacomozzi <udo.gnu@nova-sys.net>
4212 * gui/fb.{h,cpp}: switch to graphics mode (and back) to get rid
4213 of any text console output and the cursor
4215 2007-12-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4217 * server/swf/tag_loaders.cpp: revert last change; it stops
4218 the parsing errors but causes segfaults.
4220 2007-12-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4222 * server/swf/tag_loaders.cpp: Omit read of evidently optional latency
4223 bytes in MP3 audio. (Unused anyway).
4224 * libmedia/sdl/VideoDecoderFfmpeg.cpp: set FLV source line width
4225 to next multiple of four. Fixes slanted video rendering in bug #21712
4226 and doesn't appear to break other cases. Minor cleanups.
4228 2007-12-06 Sandro Santilli <strk@keybit.net>
4230 * testsuite/misc-swfc.all/Makefile.am: fix deps for
4231 alltest-runner, only allow tests to advance at most 50 times.
4232 * testsuite/misc-swfc.all/Dejagnu.sc: print file/line info
4234 * testsuite/server/StreamTest.cpp: add seek tests.
4236 2007-12-06 Sandro Santilli <strk@keybit.net>
4238 * server/parser/shape_character_def.cpp (read): don't
4239 consume an additional byte if both fill and line bits
4240 are zero. Fixes an out-of-bound access during Glyph
4241 parsing of bgtest.swf (1a2bd0411b38db40e74916a3b413522c)
4243 2007-12-05 Sandro Santilli <strk@keybit.net>
4245 * testsuite/server/StreamTest.cpp: don't assume
4246 we have a non-caching stream, accidentally test
4249 2007-12-05 Sandro Santilli <strk@keybit.net>
4251 * server/stream.h: document align reads and bitwise
4252 reads, add a couple of WARNING for possible bugs.
4254 2007-12-05 Sandro Santilli <strk@keybit.net>
4256 * server/stream.h: document align() and get_position().
4257 * testsuite/server/StreamTest.cpp: add tests for
4258 stream::get_position()
4259 * server/parser/shape_character_def.cpp (read):
4260 fix format strings for SHAPE_LOG builds.
4262 2007-12-05 Sandro Santilli <strk@keybit.net>
4264 * configure.ac, server/dlist.{cpp,h}: get assertion checking
4265 back to enabled by default, disable instead the invariant testing
4266 function for DisplayList, unless explicitly requested with a compile
4267 time GNASH_PARANOIA_LEVEL.
4269 2007-12-04 Sandro Santilli <strk@keybit.net>
4271 * testsuite/misc-ming.all/Makefile.am: registerClassTest2 requires
4272 init actions support in Ming.
4273 * server/fill_style.{cpp,h}: make fill_style a concrete class,
4274 only had the destructor as a virtual anyway...
4276 2007-12-04 Sandro Santilli <strk@keybit.net>
4278 * libmedia/AudioDecoderSimple.cpp (decode): don't leak BitsReader
4279 objects, minor cleanups (still sucks pretty much).
4280 * server/parser/video_stream_def.cpp (readDefineVideoFrame): read all
4281 data at once rather then reading a byte each iteration of a loop,
4282 read frame number from tag, improve robustness and other minor cleanups.
4283 * server/stream.cpp: reduce direct accesses to the underlying stream
4284 in preparation for using a cache buffer.
4285 * libmedia/Makefile.am: don't put <tab> characters before variable
4288 2007-12-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4290 * libmedia/Makefile.am: Add missing gstreamer files.
4292 2007-12-04 Sandro Santilli <strk@keybit.net>
4294 * (tons of files): drop tu_types.h, use boost/cstdint.hpp instead.
4296 2007-12-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4298 * libmedia/MediaDecoder.cpp: make sure we can stop decoding before the
4299 buffer is full. Avoids waiting interminably for the thread to finish
4300 if gnash is closed in the decoding loop.
4302 2007-12-04 Sandro Santilli <strk@keybit.net>
4304 * testsuite/libbase/: Makefile.am, IntTypesTest.cpp:
4305 Add test for size of *int*_t structs.
4307 2007-12-04 Zou Lunkai <zoulunkai@gmail.com>
4309 * server/sprite_instance.cpp, server/vm/ASHandlers.cpp:
4310 sprite_startDrag(), ActionStartDragMovie(), mark the character as script
4311 transformed after start mouse dragging.
4312 * testsuite/misc-swfc.all/mouse_drag_test.sc: xchecks to checks, bug #20723
4315 2007-12-04 Zou Lunkai <zoulunkai@gmail.com>
4317 * testsuite/misc-swfc.all/Makefile.am, mouse_drag_test.sc: new test file
4318 for mouse dragging, fix this should help fixing zoonmheng.swf.
4319 * testsuite/misc-ming.all/loop_test10.c: more tests for name synthesis,
4321 * server/dlist.cpp: mergeDisplayList(), minor cleanups.
4323 2007-12-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4325 * libmedia/MediaParser.h, libmedia/sdl/MediaParserFfmpeg.h: pass pointer
4326 to audio codec context (ffmpeg only).
4327 * libmedia/sdl/MediaParserFfmpeg.{h,cpp}: remove useless _frame.
4328 * libmedia/sdl/AudioDecoderFfmpeg.cpp: use parser's original audio codec
4329 context (fixes playback of some audio codecs); don't fail on missing
4330 parser until it's needed.
4332 2007-12-03 Sandro Santilli <strk@keybit.net>
4334 * libbase/curl_adapter.cpp (fill_cache): one liner early-out to
4335 improve loading speed x3.
4336 * server/array.cpp: register native functions, fix interface
4337 initialization and logging.
4338 * server/asobj/Global.cpp: ASNative => ASnative
4339 * testsuite/actionscript.all/array.as: test for calling Array()
4340 as a normal function, ctor use trough ASnative, flag position.
4342 2007-12-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4344 * libmedia/sdl/MediaDecoderSdl.cpp: make gotAudio() and gotVideo()
4345 return false when decoder setup failed. With any luck, we'll
4346 just play the decodable stream.
4348 2007-12-03 Sandro Santilli <strk@keybit.net>
4350 * server/DynamicShape.cpp (clear): set current path to NULL
4351 or would point to deleted memory. Fixes bug #21583.
4352 * server/sprite_instance.cpp (markReachableResources): assert
4353 that the tmp backup list is empty.
4355 2007-12-03 Sandro Santilli <strk@keybit.net>
4357 * server/swf/tag_loaders.cpp (sound_stream_head_loader): ensure
4358 needed bytes are available, fix long read for mp3 case.
4359 * server/stream.cpp (open_tag): don't trust a tag advertising
4360 to go past end of it's containing tag.
4362 2007-12-03 Sandro Santilli <strk@keybit.net>
4364 * libbase/zlib_adapter.cpp: print error messages from zlib, few more
4365 checks for robustness.
4366 * server/swf/tag_loaders.cpp (sound_stream_block_loader): ensure
4367 needed bytes are available, don't attempt to read 0 bytes
4368 from stream (malformed swf).
4369 * server/stream.{cpp,h}: drop unused get_tag_length, forbid
4370 seek-backs to before any opened tag start.
4371 * server/parser/movie_def_impl.{cpp,h}: mutex-protect
4372 characters dictionary.
4373 * libbase/BitsReader.h, libmedia/AudioDecoderSimple.cpp: renamed
4374 BitsReader::got_bits to gotBits (style).
4375 * testsuite/swfdec/PASSING: countdown.swf succeeds after zou commit
4376 (unload event related).
4378 2007-12-03 Zou Lunkai <zoulunkai@gmail.com>
4380 * server/dlist.{h, cpp}: add mergeDisplayList() for timeline control attempt5.
4381 * server/sprite_instance.{h,cpp): restoreDisplayList(), use the new
4382 mergeDisplayList() interface; cleanups for executing a PlaceObject2 tag.
4383 * testsuite/misc-ming.all/loop_test10.c: xchecks to checks.
4384 * testsuite/misc-ming.all/loop_test-Runner.cpp: allow a invalidated bound
4385 detection regression, one check to xcheck. This regression is caused by
4386 always invalidating a looping back character, could be fixed in later
4389 2007-12-02 Bastiaan Jacques <bastiaan@bjacques.org>
4391 * backend/render_handler{.h,_ogl.cpp,_agg.cpp,_cairo.cpp},
4392 server/render.{h,cpp}: Drop allow_glyph_textures and draw_bitmap
4393 because the glyph texturing code was removed from the Gnash core
4394 recently. (This was the only purpose for draw_bitmap.)
4396 2007-12-02 Rob Savoye <rob@ute.welcomehome.org>
4398 * Makefile.am: Add target to build ipk packages.
4399 * packaging/ipkg: new directory for ipk packaging files.
4400 * packaging/ipkg/{Gnash.desktop, control, postinst, prerm,
4401 GnashG.xpm}: New files to build ipks.
4403 2007-12-02 Sandro Santilli <strk@keybit.net>
4405 * libbase/noseek_fd_adapter.cpp: stop calling fstat and needlessly
4406 allocate/deallocate buffers. Read in chunks of 512 bytes.
4407 This makes reading from stdin more then 15 times faster.
4409 2007-12-02 Sandro Santilli <strk@keybit.net>
4411 * libbase/: Makefile.am, tu_file.h, utility.h,
4412 libmedia/AudioDecoderSimple.cpp, server/asobj/:
4413 Global.cpp, string.cpp, server/vm/action.cpp:
4416 2007-12-01 Sandro Santilli <strk@keybit.net>
4418 * server/vm/fn_call.h: add isInstantiation() method to distinguish
4419 between normal call and instantiating call to builtin constructors.
4420 * server/asobj/Boolean.cpp (boolean_ctor): return a boolean (or
4421 undefined) type if not instantiating.
4422 * server/asobj/Number.cpp (number_ctor): return a number type if not
4424 * server/asobj/string.cpp (string_ctor): return a string type if not
4426 * testsuite/actionscript.all/: Boolean.as, Number.as, String.as,
4428 * testsuite/swfdec/PASSING: string-construct tests pass.
4430 2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>
4432 * server/vm/Machine.cpp: Remove an "empty" if-statement that, if it
4433 weren't empty, would probably be a premature optimization. Pointed out
4436 2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>
4438 * backend/render_handler{.h,_ogl.cpp,_agg.cpp,_cairo.cpp},
4439 server/render.{h,cpp}: Drop create_bitmap_info_alpha, since it is
4440 unused and none of the current renderers implement it.
4442 2007-12-01 Sandro Santilli <strk@keybit.net>
4444 * testsuite/actionscript.all/Boolean.as: add test for Boolean()
4445 constructor call out of an 'new' statement. Gnash fails.
4446 * testsuite/actionscript.all/String.as: add test for String()
4447 constructor call out of an 'new' statement. Gnash fails.
4449 2007-12-01 Sandro Santilli <strk@keybit.net>
4451 * libbase/: drop demo.{cpp,h} and hash_wrapper.h
4452 * utilities/parser.cpp: use std::map instead of hash_wrapper.
4454 2007-12-01 Sandro Santilli <strk@keybit.net>
4456 * libgeometry: drop libgnashgeo.
4458 2007-12-01 Bastiaan Jacques <bastiaan@bjacques.org>
4460 * backend/render_handler_tri.{cpp,h}: Remove these unused
4462 * backend/render_handler_agg.cpp: Minor cleanups: Avoid calling
4463 default constructors (they are called anyway). Switch m_pixf to
4464 std::auto_ptr. Remove the unused stubs apply_color and apply_matrix.
4466 2007-12-01 Sandro Santilli <strk@keybit.net>
4468 * testsuite/swfdec/PASSING: sync to master.
4469 * libgeometry/: Makefile.am, kd_tree_dynamic.{cpp,h},
4470 kd_tree_packed.{cpp,h}: drop unused files guilty of
4471 using hash_wrapper.h
4473 2007-12-01 Sandro Santilli <strk@keybit.net>
4475 * libmedia/sdl/sound_handler_sdl.{cpp,h}: drop dependency on
4478 2007-12-01 Sandro Santilli <strk@keybit.net>
4480 * libmedia/gst/sound_handler_gst.{cpp,h}: drop dependency on
4482 * utilities/processor.cpp: add support for reading from stdin.
4484 2007-12-01 Sandro Santilli <strk@keybit.net>
4486 * libbase/: Makefile.am, triangulate.h, triangulate_float.cpp,
4487 triangulate_impl.h, triangulate_sint32.cpp: drop dead code.
4489 2007-12-01 Sandro Santilli <strk@keybit.net>
4491 * server/: Makefile.am, fontlib.cpp, shape.{cpp,h},
4492 tesselate.{cpp,h}, parser/morph2_character_def.{cpp,h},
4493 parser/shape_character_def.{cpp,h}:
4494 Drop unused software renderer (tesselator, mesh_set and friends)
4496 2007-12-01 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4498 * libmedia/sdl/MediaParserFfmpeg.cpp: Add buffer to prevent invalid
4499 reads when decoding media frames.
4501 2007-12-01 Sandro Santilli <strk@keybit.net>
4503 * server/: font.{cpp,h}, fontlib.{cpp,h}, text.cpp:
4504 Drop deprecated textured glyphs support.
4506 2007-11-30 Sandro Santilli <strk@keybit.net>
4508 * another bunch of files: drop deprecated cache data management
4509 and generate_font_bitmaps interface.
4511 2007-11-30 Sandro Santilli <strk@keybit.net>
4513 * server/batch_test.py => testsuite/samples/batch_test.py:
4514 moved what looks like a tester for movies in testsuite/samples
4515 in a more likely place.
4517 2007-11-30 Sandro Santilli <strk@keybit.net>
4519 * lots of files: drop most includes of container.h, the only
4520 ones left are in files which can probably die on their own.
4522 2007-11-30 Sandro Santilli <strk@keybit.net>
4524 * configure.ac: go find PNG libs (still not used, but planned)
4526 2007-11-30 Bastiaan Jacques <bastiaan@bjacques.org>
4528 * backend/render_handler.h, server/render.cpp: Drop set_cxform
4529 because it's unused; drop set_matrix because its semantics are
4530 unclear. Instead of set_matrix, add matrix arguments to
4531 draw_line_strip and draw_poly.
4532 * backend/render_handler_agg.cpp: Drop set_cxform and set_matrix and
4533 adjust draw_{line_strip,poly} to match. Drop m_current_cxform and
4534 m_current_matrix wihch were previously used to hold the arguments to
4535 set_{matrix,cxform}.
4536 * backend/render_handler_cairo.cpp: Make cairo_init_matrix static.
4537 Introduce class CairoScopeMatrix which will apply a matrix to the
4538 current cairo matrix and revert that application when it goes out of
4539 scope. Remove apply_matrix in favour of CairoScopeMatrix.
4540 * backend/render_handler_ogl.cpp, gui/gui.cpp,
4541 server/edit_text_character.{cpp,h}, server/render.{cpp,h},
4542 server/text.cpp : Adjust following the removal of set_{matrix,cxform}
4543 and changes to draw_{line_strip,poly}.
4545 2007-11-30 Sandro Santilli <strk@keybit.net>
4547 * server/edit_text_character.cpp (format_text): reset bounds when in
4549 * testsuite/misc-mtasc.all/TextFieldTest.as: success and a new test.
4551 2007-11-30 Sandro Santilli <strk@keybit.net>
4553 * server/as_value.cpp (to_number): add support for parsing hex
4555 * testsuite/actionscript.all/Number.as: success in hex parsing tests.
4557 2007-11-30 Sandro Santilli <strk@keybit.net>
4559 * testsuite/actionscript.all/Number.as: add test for '0xRRGGBB'
4560 automatic conversion to number in SWF6+ (gnash fails).
4561 * testsuite/misc-mtasc.all/: Makefile.am, TextFieldTest.as:
4562 New test for TextField, contributed by Asger Ottar Alstrup
4564 * testsuite/misc-mtasc.all/check.as: print expression in failing
4565 check()/xcheck() calls.
4567 2007-11-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4569 * libmedia/sdl/AudioDecoderFfmpeg.cpp: Don't try to delete non-
4570 existent codec context.
4571 * libmedia/sdl/MediaParserFfmpeg.cpp: Avoid moving stream position
4572 before reading probe data.
4574 2007-11-30 Sandro Santilli <strk@keybit.net>
4576 * gui/kde.cpp (quit): use QApplication::exit.
4577 * gui/kde_glue_agg.cpp: keep rendering no matter what HAVE_QTOPIA says
4578 (or rendering would be disabled for normal kde-gnash)
4580 2007-11-30 Sandro Santilli <strk@keybit.net>
4582 * plugin/plugin.cpp: don't use operator+ on temp string, it seems
4583 to have weird problems in some cases. See bug #21667.
4585 2007-11-30 Sandro Santilli <strk@keybit.net>
4587 * server/movie_root.{cpp,h}: support swapping and removing levels,
4588 add a pointer to originally loaded movie for methods still needing
4590 * gui/gui.cpp: use movie_root::getRootMovie() instead of getLevel(0)
4591 as we can't assume _level0 is present (I think).
4592 * server/character.cpp (computeTargetPath): for _level# movies !=
4593 original root movie return '_level#' string, not '/'.
4594 * server/sprite_instance.cpp: allow removing and swapping levels.
4595 * testsuite/misc-mtasc.all/: level5.as, level99.as: test swapping
4596 and removing levels.
4597 * testsuite/swfdec/PASSING: movieclip-swap-depths tests succeed.
4599 2007-11-30 Sandro Santilli <strk@keybit.net>
4601 * server/parser/shape_character_def.cpp (computeBounds): don't choke
4602 on glyph shapes with m_line set to 1. Fixes bug #21674.
4604 2007-11-30 Zou Lunkai <zoulunkai@gmail.com>
4606 * server/vm/ExecutableCode.h: don't push or execute any event code
4607 for destroyed characters(don't need to do this check if opcode guard
4609 * testsuite/misc-ming.all/loop_test6.c: two more xpasses.
4610 * testsuite/misc-ming.all/displaylist_depths_test2.c, loop_test8.c,
4611 place_and_remove_object_insane_test.c: comments or small fixs.
4613 2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>
4615 * backend/render_handler_ogl.cpp: Draw rounded outlines. Fixes bug
4618 2007-11-29 Tomas Groth Christensen <tomasgroth@yahoo.dk>
4620 * libmedia/Makefile.am: Added new files.
4621 * libmedia/FLVParser.{h,cpp}: Use a shared pointer for the tu_file stream.
4622 * libmedia/MediaBuffer.h: Changed from using a combined audio-video
4623 container, to seperate containers.
4624 * libmedia/MediaDecoder.{cpp,h}: Split into a header and source file. Move
4625 shared code to MediaDecoder.cpp.
4626 * libmedia/MediaParser.h: Use a shared pointer for the tu_file stream.
4627 * libmedia/sound_handler.h: Removed duplicate code.
4628 * libmedia/gst/VideoDecoderGst.{cpp,h}: Updated to changed API.
4629 * libmedia/gst/sound_handler_gst.{h,cpp}: Initial code for callbacks.
4630 * libmedia/sdl/AudioDecoderFfmpeg.cpp: Free at the right point(?)
4631 * libmedia/sdl/MediaDecoderSdl.{cpp,h}: Moved shared code to MediaDecoder.cpp.
4632 * libmedia/sdl/MediaParserFfmpeg.{h,cpp}: Use a shared pointer for the tu_file stream.
4633 * libmedia/sdl/sound_handler_sdl.h: Updated some comments.
4634 * libmedia/gst/AudioDecoderGst.{cpp,h}: Added. Implements the audiodecoder
4635 used by GST when playing FLVs.
4636 * libmedia/gst/MediaDecoderGst.{cpp,h}: Added. Implements the MediaDecoder
4637 used when playing movies and sounds. Doesn't work. Should not be far from
4640 2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>
4642 * backend/render_handler_ogl.cpp: Remove line styles from masks.
4645 2007-11-29 Bastiaan Jacques <bastiaan@bjacques.org>
4647 * backend/render_handler_ogl.cpp: Implement real anti-aliasing using
4648 the accumulation buffer. Make sure that video doesn't get
4649 anti-aliased. Use a raw pointer instead of boost::ref as an argument
4650 to boost::bind. This is safe given that render_handler_ogl is
4651 noncopyable. (Suggested by Sandro.)
4652 * gui/gtk_glue_gtkglext.cpp: Enable the accumulation buffer.
4654 2007-11-29 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4656 * libmedia/Makefile.am,MediaBuffer.h: build and link FFMPEG part of
4659 2007-11-29 Rob Savoye <rob@ute.welcomehome.org>
4661 * gui/am-frag/qtopia.am: Use HAVE_QT_2 instead of HAVE_QTOPIA_2.
4663 2007-11-29 Sandro Santilli <strk@keybit.net>
4665 * testsuite/misc-ming.all/Video-EmbedSquareTestRunner.cpp: don't test video
4666 if built w/out support for it.
4668 2007-11-29 Sandro Santilli <strk@keybit.net>
4670 * testsuite/actionscript.all/MovieClip.as: add test for
4671 MovieClip._level (gnash fails)
4672 * testsuite/misc-mtasc.all/Dejagnu.as: print info message on successes too.
4673 * testsuite/misc-mtasc.all/: level5.as, level99.as: test swapDepth and
4674 removeMovieClip effects on levels (gnash fails).
4676 2007-11-29 Sandro Santilli <strk@keybit.net>
4678 * server/movie_root.cpp: add staticDepthOffset to _level# movies.
4679 * server/character.{cpp,h}: get target right for _level# now
4680 that we encode staticDepthOffset-modified depth.
4681 * testsuite/actionscript.all/MovieClip.as: success getting _root's
4683 * testsuite/misc-mtasc.all/: levels.as, level5.as, level99.as:
4684 success getting levels depth.
4686 2007-11-29 Sandro Santilli <strk@keybit.net>
4688 * testsuite/generic-testrunner.sh:
4689 print run test on consistency error.
4690 * testsuite/misc-mtasc.all/Dejagnu.as: have Dejagnu.done() trace
4691 __END_OF_TEST__ for consitency checking.
4692 * testsuite/misc-mtasc.all/Makefile.am: enable consistency checking,
4693 fix dependencies, account for incosistent tests.
4695 2007-11-29 Sandro Santilli <strk@keybit.net>
4697 * testsuite/misc-mtasc.all/: enum.as, exception.as, function_test.as,
4698 hello.as, implementsOpTest.as, inheritance.as, super_test1.as:
4699 Add total run test checking.
4701 2007-11-29 Sandro Santilli <strk@keybit.net>
4703 * testsuite/misc-mtasc.all/: Dejagnu.as, check.as: add support for
4704 check_totals, xcheck_totals.
4705 * testsuite/misc-mtasc.all/: level5.as, level99.as, levels.as:
4706 add test for _level# depths (fail) and total run test count.
4708 2007-11-29 Sandro Santilli <strk@keybit.net>
4710 * configure.in: always look for X11 libs, even if build_fb is set (may be just
4711 one of the guis, not the only one)
4712 * gui/am-frag/qtopia.am: don't append to CXXFLAGS before it's
4715 2007-11-28 Rob Savoye <rob@ute.welcomehome.org>
4717 * configure.ac: Remove duplicate AC_DEFINE of HAVE_QTOPIA.
4718 * macros/agg.m4: Put double quotes around sub-shell invocation to
4719 avoid problems with the buggy bash.
4720 * macros/qt.m4: Cleanup how the version number gets set from
4722 * macros/qtopia.m4: Add more modules to qt_headers.
4723 * gui/kde.cpp: Add support for Qt2.
4724 * gui/kdesup.h.cpp: Add support for Qt2.
4725 * gui/kde_glue.h: Add initial support for Qt4.
4726 * gui/kde_glue_agg.{cpp,h}: Add initial support for Qt4.
4727 * gui/am-frag/qtopia.am: Add support for Qt2, and Qtopia.
4728 * gui/am-frag/kde.am: Add support for the QT4 Qt3Support module.
4730 2007-11-29 Sandro Santilli <strk@keybit.net>
4732 * libbase/jpeg.{cpp,h}: use setjmp/longjmp from custom error handler
4733 so to not return control to libjpeg which doesn't expect that
4734 and properly throw an exception on first error.
4737 2007-11-28 Rob Savoye <rob@ute.welcomehome.org>
4739 * gui/am-frag: Automake include files to make the top level
4740 gui/makefile.am less huge. It also makes it much cleaner for when
4741 you have to add a new GUI target.
4742 * gui/Makefile.am: Include Automake stubs if specified by the
4745 * macros/qt.m4: New file. originally pulled from kde.m4, but then
4746 modified heavily to use QTDIR correctly, and to handle multiple
4747 differing versions of QT APIs. For now the default is to use Qt3
4749 * macros/kde.m4: QT stuff moved to it's own file.
4750 * macros/qtopia.m4: Change how the version and topdir get set
4751 based on now correctly handling QPEDIR.
4752 * configure.ac: Add Automake conditional for cross compiling. Add
4753 more Automake conditionals for the different QT versions.
4755 2007-11-28 Markus Gothe <nietzsche@lysator.liu.se>
4757 * backend/render_handler_ogl.cpp: boost::ref(this) -> *this.
4758 * macros/freetype.m4: --libs-only-l is bogus if you have it
4759 installed by default and pkg-config is unaware of it.
4760 * macros/qtopia.m4: Clean up.
4761 * macros/agg.m4: --libs-only-L cannot have worked ever.
4762 * configure.ac, macros/curl.m4, macros/qt.m4, macros/qtopia.m4:
4765 2007-11-28 Sandro Santilli <strk@keybit.net>
4767 * server/swf/tag_loaders.cpp (inflate_wrapper): pretty-print about
4768 premature end of tag while inflating, add last error message when
4769 an error occurs during inflating.
4771 2007-11-28 Sandro Santilli <strk@keybit.net>
4773 * gui/cpp.cpp: fix build with ENABLE_REGION_UPDATES_DEBUGGING
4775 * server/swf/tag_loaders.cpp (inflate_wrapper): don't read past
4776 end of tag, reads in chunks rather then byte-by-byte.
4778 * server/impl.cpp: stub support for png loading.
4780 2007-11-28 Sandro Santilli <strk@keybit.net>
4782 * server/asobj/Stage.{cpp,h}: make Stage an AsBroadcaster and
4783 register its native methods; stage align and showMenu members.
4784 * server/movie_root.cpp: update use of Stage to its AsBroadcaster
4786 * server/asobj/Key.cpp: minor cleanups.
4787 * server/asobj/MovieClipLoader.cpp: cleanups and native methods
4789 * testsuite/actionscript.all/Stage.as: few more successes.
4791 2007-11-28 Sandro Santilli <strk@keybit.net>
4793 * testsuite/actionscript.all/Function.as: 'new' is a reserved word,
4794 protect it as a string when used as property name (or Ming
4795 0.4.0.beta6 won't compile it)
4796 * server/asobj/Key.cpp: register native Key methods.
4797 * configure.ac: look for QT libs if kde gui is requested;
4798 don't bail out if QTOPIA is not found, unless qtopia gui is
4801 2007-11-27 Rob Savoye <rob@ute.welcomehome.org>
4803 * macros/qtopia.m4: New file to find Qtopia bits. Current supports
4805 * Makefile.am: Add Qtopia debug statements.
4806 * configure.ac: Add Qtopia as a GUI. Look for Qtopia dev files if
4807 specified. Currently because of the diversity of Qtopia
4808 installation paths, --with-qtopia-incl and --with-qtopia-lib must
4811 2007-11-27 Sandro Santilli <strk@keybit.net>
4813 * server/swf/tag_loaders.cpp (serialnumber_loader): fix parsing
4814 of the SERIALNUMBER tag.
4816 2007-11-27 Sandro Santilli <strk@keybit.net>
4818 * server/swf.h: define ACTION_FSCOMMAND2
4819 * server/vm/ASHandlers.{cpp,h}: stub support for fscommand2
4822 2007-11-27 Sandro Santilli <strk@keybit.net>
4824 * server/movie_root.{cpp,h}: notify mouse events to _global.Mouse
4826 * server/asobj/Mouse.cpp: initialize _global.Mouse as an
4828 * server/asobj/AsBroadcaster.cpp: reduce debugging output.
4829 * testsuite/actionscript.all/Mouse.as: successes in AsBroadcaster
4830 interfaces availability.
4832 2007-11-27 Sandro Santilli <strk@keybit.net>
4834 * server/vm/ASHandlers.cpp (ActionMbSubString, ActionMbLength):
4835 always resize the vector passed as third argument to
4836 GuessEncoding so to contain at least one element each
4837 character in the string (not fully tested but fixes
4838 an invalid offset access with panda.swf).
4840 2007-11-27 Sandro Santilli <strk@keybit.net>
4842 * server/asobj/Object.cpp (object_registerClass): hopefully
4843 got arguments index correctly this time (in error messages).
4845 2007-11-27 Sandro Santilli <strk@keybit.net>
4847 * testsuite/misc-mtasc.all/check.as: add some dox over
4848 check_equals aimed at get first and second arguments
4850 * testsuite/misc-mtasc.all/: Makefile.am, implementsOp*:
4851 Test for implementsOp (adapted patch #6287).
4853 2007-11-27 Sandro Santilli <strk@keybit.net>
4855 * server/dlist.cpp (unload): don't destroy childs when unloading
4857 * testsuite/actionscript.all/MovieClip.as: success in tests
4858 of accessibility of unloaded sprites' childs.
4860 2007-11-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4862 * server/asobj/NetStreamFfmpeg.cpp: don't try to free codec context
4863 for non-FLVs, however, because these are initialized differently.
4865 2007-11-27 Sandro Santilli <strk@keybit.net>
4867 * server/character.cpp (unload): don't abort if the character
4868 is attempted to be unloaded twice.
4869 * server/sprite_instance.cpp: don't abort if the character
4870 is attempted to be unloaded twice.
4871 * testsuite/actionscript.all/MovieClip.as: test double unload
4872 of a character (once triggered by unload of parent and one
4875 2007-11-27 Sandro Santilli <strk@keybit.net>
4877 * testsuite/actionscript.all/MovieClip.as: fix bogus check calls,
4878 reveiling a bunch of failures in gnash...
4880 2007-11-27 Udo Giacomozzi <udo.gnu@nova-sys.net>
4882 * extensions/fileio/fileio.{cpp,h}: implement feof()
4884 2007-11-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4886 * server/asobj/NetStreamFfmpeg.{cpp,h}: mainly visual code cleanup. Also make
4887 sure allocated codec context is explicitly freed when stream is closed
4888 (fixes leak when playing FLVs).
4890 2007-11-27 Sandro Santilli <strk@keybit.net>
4892 * server/as_value.h: rename allowUnloaded parameter of sprite accessor
4893 methods to skipRebinding, for clarity.
4895 2007-11-26 Sandro Santilli <strk@keybit.net>
4897 * server/asobj/NetStreamFfmpeg.{cpp,h}: more AVPacket wrapping work.
4899 2007-11-26 Sandro Santilli <strk@keybit.net>
4901 * server/as_value.{cpp,h}: add is_sprite() and a way to get the sprite
4902 value w/out re-evaluating path.
4903 * server/sprite_instance.cpp (get_path_element): don't re-evaluate
4904 target paths of unloaded sprites while getting path elements.
4905 Needs more testing, but for now it fixes bug #21647.
4907 2007-11-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
4909 * server/asobj/NetStreamFfmpeg.{cpp,h}: add PktPointer class
4910 to make sure AVPackets are initialized and (more importantly)
4911 destroyed when no longer needed.
4913 2007-11-26 Sandro Santilli <strk@keybit.net>
4915 * testsuite/actionscript.all/MovieClip.as: add failing test
4916 for referenceability of childs of unloaded sprites when
4917 brother has onUnload event and child doesn't.
4918 * testsuite/swfdec/PASSING: sync with swfdec git.
4920 2007-11-26 Sandro Santilli <strk@keybit.net>
4922 * server/as_environment.cpp (get_variable_raw): log an aserror when
4923 referencing an undefined variable.
4924 * server/parser/action_buffer.h: cleanup and comments fix
4925 * testsuite/misc-swfmill.all/dict_override.xml: comments fix.
4926 * server/parser/movie_def_impl.{cpp,h}: consistent locking for
4927 _frames_loaded (so helgrind is happy).
4928 * gui/: Makefile.am, gnash.cpp: add CXXFLAGS in --version output.
4930 2007-11-26 Zou Lunkai <zoulunkai@gmail.com>
4932 * server/dlist.h, dlist.cpp: testInvariant(),
4933 reinsertRemovedCharacter(), allow duplicated depths in removed zone.
4934 * testsuite/misc-ming.all/goto_frame_test.c: xcheck->check.
4936 2007-11-26 Zou Lunkai <zoulunkai@gmail.com>
4938 * testsuite/misc-ming.all/goto_frame_test.c: cleanups and tests for
4939 timeline control. new tests are disabled by default, otherwise
4940 DisplayList::testInvariant() would abort.
4942 2007-11-25 Rob Savoye <rob@ute.welcomehome.org>
4944 * macros/hildon.m4: Fix the rest of the double quoting around
4945 shell command expansion.
4947 2007-11-25 Sandro Santilli <strk@keybit.net>
4949 * server/asobj/NetStreamFfmpeg.cpp (decodeMediaFrame): always call
4950 av_read_frame on the stack-allocated AVPacket before returning.
4952 * server/parser/movie_definition.h: corrected some old names
4955 2007-11-24 Bastiaan Jacques <bastiaan@bjacques.org>
4957 * backend/render_handler_cairo.cpp: Make sure outlines are
4958 rounded. Fixes bug #18873.
4960 2007-11-24 Bastiaan Jacques <bastiaan@bjacques.org>
4962 * backend/render_handler_ogl.cpp: Implement region invalidation,
4963 but keep it disabled since it does not appear to affect
4964 performance in its current incarnation.
4966 2007-11-24 Sandro Santilli <strk@keybit.net>
4968 * testsuite/media/: README, default.orc, majorscale.sco:
4969 Initial sample input for csound-based sound generators.
4971 2007-11-24 Rob Savoye <rob@ute.welcomehome.org>
4973 * macros/hildon.m4: Add more double quotes around shell expansion
4974 when setting variables. Fixes #21638
4976 2007-11-24 Sandro Santilli <strk@keybit.net>
4978 * gui/Player.{cpp,h}, gui/gui.cpp, libmedia/AudioDecoder.h,
4979 libmedia/AudioDecoderNellymoser.{cpp,h},
4980 libmedia/AudioDecoderSimple.{cpp,h}, libmedia/FLVParser.{cpp,h},
4981 libmedia/MediaBuffer.h, libmedia/MediaDecoder.h,
4982 libmedia/MediaParser.h, libmedia/SoundInfo.h,
4983 libmedia/VideoDecoder.h, libmedia/sound_handler.h,
4984 libmedia/gst/VideoDecoderGst.{cpp,h},
4985 libmedia/gst/sound_handler_gst.{cpp,h},
4986 libmedia/sdl/AudioDecoderFfmpeg.{cpp,h},
4987 libmedia/sdl/AudioDecoderMad.{cpp,h},
4988 libmedia/sdl/MediaDecoderSdl.{cpp,h},
4989 libmedia/sdl/MediaParserFfmpeg.{cpp,h},
4990 libmedia/sdl/VideoDecoderFfmpeg.{cpp,h},
4991 libmedia/sdl/sound_handler_sdl.cpp,
4992 libmedia/sdl/sound_handler_sdl.h, plugin/win32/plugin.cpp,
4993 server/button_character_instance.cpp, server/gnash.h,
4994 server/impl.cpp, server/sprite_instance.cpp,
4995 server/asobj/NetStreamFfmpeg.cpp, server/asobj/NetStreamGst.cpp,
4996 server/asobj/Sound.cpp, server/asobj/SoundFfmpeg.cpp,
4997 server/asobj/SoundGst.cpp, server/asobj/SoundMad.cpp,
4998 server/parser/button_character_def.h,
4999 server/parser/sound_definition.cpp,
5000 server/parser/video_stream_def.{cpp,h},
5001 server/swf/StartSoundTag.{cpp,h}, server/swf/tag_loaders.cpp,
5002 server/vm/ASHandlers.cpp, testsuite/MovieTester.{h,cpp}:
5003 Put libmedia in its own namespace (gnash::media).
5005 2007-11-24 Rob Savoye <rob@ute.welcomehome.org>
5007 * macros/libtool.m4: Move the serial numbers to the top of the
5008 file as required by newer autotools.
5009 * macros/archflag.m4, boost.m4, curl.m4, dbus.m4, docbook.m4,
5010 freetype.m4, gnashpkgtool.m4, gtk2.m4, gtkglext.m4, jpeg.m4,
5011 lib-link.m4, libXML.m4, ming.m4, opengl.m4, pango.m4, sdl.m4,
5012 x11.m4: Put double quotes around sub-shell invocation to avoid
5013 problems with the buggy bash on RHEL5.
5016 2007-11-24 Sandro Santilli <strk@keybit.net>
5018 * server/: swf.h, swf/StartSoundTag.{cpp,h}: More dox about
5021 2007-11-23 Bastiaan Jacques <bastiaan@bjacques.org>
5023 * backend/Makefile.am: Stop building render_handler_tri.cpp
5024 since it is no longer used.
5025 * server/shape.{cpp,h}: Introduce path::transform and
5026 edge::transform, to be used for matrix transformations.
5027 * backend/render_handler_ogl.cpp: Reimplement
5028 apply_matrix_to_paths using path::transform.
5030 2007-11-23 Sandro Santilli <strk@keybit.net>
5032 * server/parser/sound_definition.h: document sound_sample a bit.
5033 * server/swf/StartSoundTag.{cpp,h}: some more cleanup (attempt).
5035 2007-11-23 Bastiaan Jacques <bastiaan@bjacques.org>
5037 * backend/render_handler_ogl.cpp: Implement nested masks. Also take
5038 advantage of changes to type 'point' in trace_curve.
5040 2007-11-23 Sandro Santilli <strk@keybit.net>
5042 * server/: Makefile.am, impl.cpp, parser/sound_definition.{cpp,h}
5043 swf/StartSoundTag.{cpp,h}, swf/tag_loaders.{cpp,h}:
5044 Moved StartSoundTag in its own file, cleaned up.
5046 2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5048 * testsuite/misc-ming.all/NetStream-SquareTest: fix expected results for
5051 2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5053 * testsuite/misc-ming.all/NetStream-SquareTest: duplicate some tests from
5054 NetStream.as (different results expected).
5056 2007-11-23 Sandro Santilli <strk@keybit.net>
5058 * testsuite/actionscript.all/NetStream.as: fix an expected result.
5060 2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5062 * testsuite/actionscript.all/NetStream.as: more tests, some changes.
5064 2007-11-23 Sandro Santilli <strk@keybit.net>
5066 * server/asobj/NetStream.cpp: correctly case currentFps member.
5067 * testsuite/misc-ming.all/NetStream-SquareTest.c: add test for
5068 currentFps only being defined on NetStream.prototype after
5069 construction of a NetStream instance.
5070 * server/asobj/ClassHierarchy.cpp: make NetStream available
5073 2007-11-23 Sandro Santilli <strk@keybit.net>
5075 * server/: Makefile.am, impl.cpp, swf/tag_loaders.{cpp,h},
5076 swf/SetBackgroundColorTag.h:
5077 Extrapolated a SetBackgroundColorTag class out of tag_loaders.cpp
5078 into its own header file, cleaned up.
5080 2007-11-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5082 * testsuite/actionscript.all/NetStream.as: add missing tests for
5085 2007-11-23 Sandro Santilli <strk@keybit.net>
5087 * server/: stream.h, types.cpp: improved dox.
5089 2007-11-23 Sandro Santilli <strk@keybit.net>
5091 * server/Makefile.am, server/execute_tag.h, server/impl.cpp,
5092 server/sprite_instance.cpp, server/sprite_instance.h,
5093 server/parser/movie_def_impl.cpp,
5094 server/parser/movie_def_impl.h,
5095 server/parser/movie_definition.h,
5096 server/parser/sound_definition.cpp,
5097 server/parser/sound_definition.h,
5098 server/parser/sprite_definition.cpp,
5099 server/parser/sprite_definition.h,
5100 server/parser/video_stream_def.h, server/swf/ControlTag.h,
5101 server/swf/DisplayListTag.h, server/swf/DoActionTag.h,
5102 server/swf/DoInitActionTag.h, server/swf/PlaceObject2Tag.cpp,
5103 server/swf/RemoveObjectTag.cpp, server/swf/RemoveObjectTag.h,
5104 server/swf/tag_loaders.cpp:
5105 Renamed execute_tag to ControlTag and moved under server/swf;
5106 renamed movie_definition::add_execute_tag to addControlTag;
5107 split a DoInitActionTag out of DoActionTag.
5109 2007-11-23 Sandro Santilli <strk@keybit.net>
5111 * testsuite/swfdec/Makefile.am: fix whitespace following trailing
5113 * libbase/tree.hh: we don't want tree.hh documentation
5114 to be the main page...
5116 2007-11-23 Sandro Santilli <strk@keybit.net>
5118 * server/vm/ActionExec.h: document cleanupAfterRun.
5120 2007-11-23 Zou Lunkai <zoulunkai@gmail.com>
5122 * testsuite/misc-ming.all/Makefile.am, loop_test10.c: file a new
5123 test for timeline control, which completely breaks the current model.
5124 There should be a simpler model.
5126 2007-11-22 Sandro Santilli <strk@keybit.net>
5128 * server/drag_state.h: add markReachableResources method
5129 * server/movie_root.{cpp,h}: mark the character being dragged as
5132 2007-11-22 Sandro Santilli <strk@keybit.net>
5134 * server/as_environment.cpp (get_variable): variables paths containing
5135 slashes but no colon will be attempted to be evaluated as sprites
5136 before falling back to property lookup.
5137 * testsuite/actionscript.all/getvariable.as: successes in all newly
5139 * testsuite/swfdec/PASSING: getvariable-slashpath and enumerate
5142 2007-11-22 Markus Gothe <nietzsche@lysator.liu.se>
5144 * macros/archflag.m4: Updated to the latest version.
5146 2007-11-22 Sandro Santilli <strk@keybit.net>
5148 * server/vm/ASHandlers.cpp (ActionEnumerate): cleanup aserror message.
5149 * testsuite/actionscript.all/getvariable.as: another test
5151 2007-11-22 Sandro Santilli <strk@keybit.net>
5153 * server/as_environment.{cpp,h}: drop the is_slash_based
5154 parameter from parse_path, which gets simplified a bit.
5156 2007-11-22 Sandro Santilli <strk@keybit.net>
5158 * testsuite/actionscript.all/getvariable.as: additional test
5159 for /slash/based path ending with a colon.
5161 2007-11-22 Rob Savoye <rob@ripple.welcomehome.org>
5163 * gui/gtksup.h: Sigh, use USE_HILDON and USE_ALP after all.
5164 * configure.ac: Don't build hildon as part of --enable-gui=all yet.
5166 2007-11-22 Sandro Santilli <strk@keybit.net>
5168 * configure.ac: make request for hildon and unavailability a nogo,
5169 suggest installing libhildon-1-dev rather then libhildon.0-dev
5170 for apt-get (the former exists for ubuntu gutsy, the latter
5173 2007-11-22 Rob Savoye <rob@ripple.welcomehome.org>
5175 * gui/gtksup.h: Use HAVE_HILDON and HAVE_ALP instead of USE_HILDON
5177 * macros/alp.m4, hildon.m4: Define HAVE_HILDON or HAVE_ALP if the
5178 dependant files exist.
5180 * Makefile.am: Add dumpconfig prints for ALP and Hildon.
5181 * configure.ac: Add support for the ALP and Hildon GUI frameworks,
5182 both of which are built on GTK+. Add initial support for the
5183 Launcher extension, which doesn't exist yet.
5184 * macros/alp.m4: Find Hildon headers and libraries.
5185 * macros/hildon.m4: Find Hildon headers and libraries.
5186 * gui/Makefile.am: Add support for the Hildon GUI framework, which
5188 * gui/gtk.cpp, gtksup.h: Add support for the Hildon GUI framework,
5189 which is built on GTK+. Move CreateMenu.
5190 * gui/gnash.in: Add ALP and Hildon.
5192 2007-11-22 Sandro Santilli <strk@keybit.net>
5194 * testsuite/actionscript.all/: getvariable.as, targetPath.as:
5195 A couple of additional tests for simple variable paths with
5196 slashes and no columns.
5198 2007-11-22 Sandro Santilli <strk@keybit.net>
5200 * server/as_object.cpp (get_member_default): don't log
5201 ActionLimitException here, will be logged by outer catcher.
5203 2007-11-22 Chad Musick <chadmusick@msbx.net>
5205 * testsuite/swfdec/PASSING: 23 new passing tests.
5206 * server/as_environment.h: Make pushCallFrame and popCallFrame
5207 private, remove clearCallFrames(), provide FrameGuard nested
5208 class to provide safe access.
5209 * server/as_object.cpp: Prevent recursion in get_super, check for
5210 search depth when finding properties and throw a limit exception,
5211 * server/swf_function.cpp: Change to use as_environment::FrameGuard
5212 and use it earlier. Only look for super in swf6+.
5213 * server/builtin_function.h: Increase call stack on execution.
5214 * server/vm/ASHandlers.cpp: Remove leftover debugging output.
5216 2007-11-22 Sandro Santilli <strk@keybit.net>
5218 * testsuite/misc-ming.all/key_event_test.c: make the test more verbose
5219 * server/movie_root.cpp (cleanupUnloadedListeners): erase the
5220 correct iterator (thanks zou for noticing).
5222 2007-11-21 Sandro Santilli <strk@keybit.net>
5224 * server/sprite_instance.cpp (sprite_startDrag): add support for
5227 2007-11-21 Sandro Santilli <strk@keybit.net>
5229 * server/sprite_instance.cpp (get_frame_number):
5230 Consider frame specs evaluating to 0 as frame labels.
5231 Fixes bug #21567 (snoopy_click.swf).
5233 2007-11-21 Sandro Santilli <strk@keybit.net>
5235 * server/vm/ASHandlers.cpp (ActionStringCompare):
5236 use versioned string conversion.
5237 * testsuite/actionscript.all/ops.as: few null/undefined
5238 string comparison tests.
5240 2007-11-21 Sandro Santilli <strk@keybit.net>
5242 * server/vm/ASHandlers.cpp (ActionLessThen, ActionEqual):
5243 return a number rather then a bool in swf4 or lower.
5245 2007-11-21 Sandro Santilli <strk@keybit.net>
5247 * testsuite/misc-swfc.all/swf4opcode.sc: found a way for better
5248 test result reporting (can be improved to become a full SWF4
5249 compatible Dejagnu thing - lacks actual result message so far).
5251 2007-11-21 Sandro Santilli <strk@keybit.net>
5253 * server/sprite_instance.cpp: implement MovieClip.{start,stop}Drag.
5254 * testsuite/misc-ming.all/: DrawingApiTest.as,
5255 DrawingApiTestRunner.cpp:
5256 Prepare for testing MoveClip.{start,stop}Drag
5258 2007-11-21 Sandro Santilli <strk@keybit.net>
5260 * server/movie_root.{cpp,h}: generalize key and mouse
5261 listeners management.
5262 * server/sprite_instance.cpp (add_display_object): don't
5263 attempt to remove a NULL pointer from the listeners set.
5265 2007-11-21 Chad Musick <chadmusick@msbx.net>
5267 * server/as_environment.h,.cpp: Initialize _original_target, as this
5268 absence was causing segfaults. Convert the call stack to a static
5270 * server/swf_function.cpp: Use a class for ensuring the call stack,
5271 rather than doing so manually.
5272 * server/Property.h,.cpp: Initialize differently.
5273 * server/as_value.cpp: Be more careful about return values.
5274 * testsuite/actionscript.all/LoadVars.as: Clean up debugging code.
5275 * server/namedStrings.h,.cpp: Add 'super' to known strings.
5276 * server/vm/ActionExec.cpp: No need to check call stack, as it is
5277 guaranteed correct through use of FrameGuard class.
5279 2007-11-21 Zou Lunkai <zoulunkai@gmail.com>
5281 * server/as_value.cpp: to_number() convert invalid float literal
5282 to zero instead of NaN for swf<5.
5283 * testsuite/misc-swfc.all/swf4opcode.sc: xcheck->check.
5285 2007-11-21 Zou Lunkai <zoulunkai@gmail.com>
5287 * testsuite/misc-swfc.all/swf4opcode.sc,
5288 testsuite/misc-actionsript.all/ops.as: more opcode tests.
5290 2007-11-20 Sandro Santilli <strk@keybit.net>
5292 * server/as_object.cpp, server/asobj/AsBroadcaster.cpp:
5293 Fix build with --enable-cassert.
5294 * extensions/fileio/fileio.cpp:
5295 Drop as_environment argument from to_string calls.
5297 2007-11-20 Bastiaan Jacques <bastiaan@bjacques.org>
5299 * backend/render_handler.h: Document masks.
5300 * libgeometry/Point2d.h: Define equality operators as clas members.
5302 2007-11-20 Bastiaan Jacques <bastiaan@bjacques.org>
5304 * server/vm/ASHandlers.cpp: Fix typo.
5306 2007-11-20 Chad Musick <chadmusick@msbx.net>
5308 * server/array.cpp.h: Remove as_environment parameter from removeLast
5309 * server/asobj/AsBroadcaster.cpp Color.cpp Global.cpp LoadVars.cpp
5310 MovieClipLoader.cpp Object.cpp Sound.cpp string.cpp xml.h,.cpp
5311 xmlsocket.cpp: Reduce dependence on as_environment.
5313 2007-11-20 Chad Musick <chadmusick@msbx.net>
5315 * server/as_object.h,.cpp: Remove as_environment parameter from
5317 * server/edit_text_character.cpp: Fix call to callMethod
5318 * server/asobj/AsBroadcaster.cpp Key.cpp MovieClipLoader.cpp
5319 xml.cpp xmlsocket.cpp: Fix calls to callMethod
5320 * server/vm/fn_call.h: Add necessary support for removing env()
5321 function (not yet removed).
5323 2007-11-20 Zou Lunkai <zoulunkai@gmail.com>
5325 * testsuite/misc-swfc.all/swf4opcode.sc, Makefile.am: add tests for swf4
5326 opcodes, get some failures.
5328 2007-11-20 Zou Lunkai <zoulunkai@gmail.com>
5330 * server/vm/AsHandlers.cpp: using to_string_versioned() for opcode ActionStringEq,
5333 2007-10-20 Chad Musick <chadmusick@msbx.net>
5335 * server/swf_function.h,.cpp: Remove getSuper function
5336 * server/as_object.cpp: Implement get_super function.
5338 2007-11-20 Chad Musick <chadmusick@msbx.net>
5340 * server/array.cpp as_value.cpp as_value.h character.cpp
5341 edit_text_character.cpp sprite_instance.cpp timers.cpp:
5342 Remove as_environment from value conversions.
5343 * server/asobj/AsBroadcaster.cpp Color.cpp Global.cpp
5344 MoveClipLoader.cpp NetConnection.cpp NetStream.cpp Object.cpp
5345 Sound.cpp Stage.cpp string.cpp xml.cpp xmlnode.cpp xmlsocket.cpp:
5346 Remove as_environment from value conversions.
5347 * testsuite/actionscript.all/TextField.as: Unexpected successes.
5348 * testsuite/misc-ming.all/intervalTestRunner.cpp: Remove as_environment
5349 from value conversion.
5351 2007-11-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5353 * server/parser/sound_definition.{h,cpp}: remove compiler
5356 2007-11-17 Markus Gothe <nietzsche@lysator.liu.se>
5358 * server/parser/shape_character_def.cpp: Make IRIX happy.
5359 * configure.ac: Fix SIZET_FMT detection for non-gcc compilers.
5361 2007-11-17 Sandro Santilli <strk@keybit.net>
5363 * testsuite/swfdec/Makefile.am: more splitting, each group
5364 is for each letter of the alphabet (more friendly to use)
5365 * testsuite/swfdec/gen_run_swfdec_testsuite.sh: export
5366 a GNASH_PLAYER so that swfdec_run_test may decide to
5367 use gnash rather then gprocessor...
5369 2007-11-17 Sandro Santilli <strk@keybit.net>
5371 * server/asobj/Color.cpp (color_gettransform): truncate
5373 * testsuite/swfdec/PASSING: color1.swf succeeds
5374 * testsuite/swfdec/Makefile.am: split swfdec test runners in
5375 more groups (groups of 3 letters the name starts with)
5377 2007-11-17 Sandro Santilli <strk@keybit.net>
5379 * gui/Player.cpp: parse querystring before flashvars.
5380 * testsuite/misc-ming.all/: FlashVarsTest.as, FlashVarsTest.html,
5381 Makefile.am: add test for fully-qualified variables passed trough
5382 query string and flash vars.
5384 2007-11-17 Sandro Santilli <strk@keybit.net>
5386 * utilities/processor.cpp: fix -d switch.
5387 * testsuite/swfdec/: Makefile.am, gen_run_swfdec_testsuite.sh:
5388 Split run of swfdec testsuite in 4 steps, to allow shorter
5391 2007-11-17 Sandro Santilli <strk@keybit.net>
5393 * server/as_value.cpp (SpriteProxy:find_sprite_by_target):
5394 Make a more optimized implementation based on the assumption
5395 that a sprite target is always in "dot" syntax.
5397 2007-11-16 Sandro Santilli <strk@keybit.net>
5399 * server/: as_object.h, character.h: add virtual to_character()
5401 * server/as_environment.cpp (find_target): allow characters targets.
5402 Fixes snowman.swf (http://bugs.libming.org/show_bug.cgi?id=41)
5403 * server/vm/ASHandlers.cpp (ActionStartDragMovie): unknown target
5404 would be an ASerror, not a generic one.
5406 2007-11-16 Sandro Santilli <strk@keybit.net>
5408 * server/array.h (visitAll): copy the container before executing
5409 arbitrary code while iterating over it. Fixes a memory corruption.
5410 * server/asobj/Key.{cpp,h}: Initialize the Key object as an usual
5412 * server/movie_root.cpp: don't cleanup Key object listeners as they
5413 will follow usual AsBroadcaster cleaning convention.
5414 * testsuite/actionscript.all/Key.as: successes.
5416 2007-11-16 Sandro Santilli <strk@keybit.net>
5418 * configure.ac: quote arguments of test(1)
5419 * server/asobj/MovieClipLoader.cpp (dispatchEvent): don't lookup
5420 broadcastMessage, as it's a named string.
5422 2007-11-16 Sandro Santilli <strk@keybit.net>
5424 * server/movie_root.{cpp,h}: Add a flushHigherPriorityActionQueue
5425 method to be called at the end of every action block execution
5426 (including end of function calls).
5427 * server/vm/ActionExec.cpp: flush higher priority actions at end
5429 * testsuite/misc-swfc.all/: action_execution_order_test12.sc,
5430 movieclip_destruction_test1.sc: fixed two cases.
5433 2007-11-16 Zou Lunkai <zoulunkai@gmail.com>
5435 * testsuite/misc-swfc.all/action_execution_order_test12.sc: add tests
5436 for action block exit and back.
5438 2007-11-16 Sandro Santilli <strk@keybit.net>
5440 * utilities/processor.cpp: add -d switch to force an advance delay.
5442 2007-11-16 Zou Lunkai <zoulunkai@gmail.com>
5444 * server/as_object.{h,cpp}, server/asobj/Key.{h,cpp},
5446 server/button_character_instance.cpp,
5447 server/edit_text_character.cpp,
5448 server/movie_root.{h,cpp},
5449 server/sprite_instance.cpp: drop new key listeners design and fix the
5450 old design with caring about listeners invoking order.
5451 * testsuite/key_event_test.c, key_event_testrunner.cpp: xcheck->check.
5453 2007-11-15 Sandro Santilli <strk@keybit.net>
5455 * testsuite/actionscript.all/ops.as: a couple of tests more.
5457 2007-11-15 Sandro Santilli <strk@keybit.net>
5459 * server/sprite_instance.{cpp,h}: call constructAsScriptObject
5460 directly rather then on_event(CONSTRUCT) when needed. Doing
5461 so we can invoke the event handler *after* __proto__ is set
5462 but *before* the class constructor is invoked, as reported to
5463 be needed by swfdec tests.
5464 * testsuite/swfdec/PASSING: movieclip-set-prototype-{5,6,7,8}.swf
5467 2007-11-15 Sandro Santilli <strk@keybit.net>
5469 * server/vm/ASHandlers.cpp (ActionCastOp): swap order of arguments,
5470 return null on supposedly invalid call.
5471 * testsuite/swfdec/PASSING: cast-{5,6,7,8}.swf succeed.
5473 2007-11-15 Sandro Santilli <strk@keybit.net>
5475 * server/vm/ASHandlers.cpp (ActionDivide): return the string '#ERROR#'
5476 when a division by 0 is requested in SWF<5.
5477 * testsuite/swfdec/PASSING: crash-0.5.3-divide-by-zero.swf succeeds.
5479 2007-11-15 Sandro Santilli <strk@keybit.net>
5481 * server/as_value.cpp (to_string): for MOVIECLIP types return
5482 the empty string when dangling.
5483 * testsuite/actionscript.all/MovieClip.as: add test for convertion
5484 of dangling movieclip values to a string.
5485 * testsuite/swfdec/PASSING: dangling-print-{6,7,8}.swf succeed now.
5487 2007-11-15 Sandro Santilli <strk@keybit.net>
5489 * server/sprite_instance.cpp: construct instance on CONSTRUCT
5490 event (not INITIALIZE). YouTube works, and we push all init
5492 * testsuite/misc-ming.all/init_action_test.c,
5493 testsuite/misc-swfc.all/action_execution_order_test10.sc,
5494 testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
5495 testsuite/misc-swfc.all/registerclass_test3.sc,
5496 testsuite/swfdec/PASSING: Successes due to pushing init
5499 2007-11-15 Sandro Santilli <strk@keybit.net>
5501 * server/parser/: movie_definition.h, movie_def_impl.{cpp,h},
5502 sprite_definition.h: drop the obsoleted get_init_actions interface.
5504 2007-11-15 Sandro Santilli <strk@keybit.net>
5506 * testsuite/misc-swfc.all/Dejagnu.sc: make Dejagnu window automatic
5507 resize to let text fit in (autoSize).
5508 * server/sprite_instance.cpp: cleanup debugging output.
5509 * testsuite/misc-swfc.all/registerclass_test3.sc: add more tests for
5510 registerClass effects visibility.
5512 2007-11-15 Zou Lunkai <zoulunkai@gmail.com>
5514 * testsuite/misc-swfc.all/registerclass_test3.sc: add tests to for youtube
5515 player2 and caught the bug.
5517 2007-11-14 Sandro Santilli <strk@keybit.net>
5519 * testsuite/swfdec/PASSING: sync'd with results from current swfdec
5522 2007-11-14 Sandro Santilli <strk@keybit.net>
5524 * server/as_environment.{cpp,h}: unify object finding and target
5525 finding. The code is pretty dirty but is more correct then
5527 * testsuite/swfdec/PASSING: getsetproperty-target-{6,7,8}.swf succeed
5528 * testsuite/actionscript.all/with.as: no more failures (we need more)
5529 * testsuite/misc-ming.all/callFunction_test.c: two more successes, one
5532 2007-11-14 Sandro Santilli <strk@keybit.net>
5534 * server/asobj/Object.cpp (object_registerClass): more informative
5536 * testsuite/actionscript.all/TextField.as: more tests.
5537 * server/sprite_instance.cpp, server/video_stream_instance.cpp:
5538 Remove some debugging output (compile-time defined)
5540 2007-11-14 Sandro Santilli <strk@keybit.net>
5542 * server/movie_root.{cpp,h}: add a processingActions method,
5543 might be used to know wheter to push actions or execute
5545 * server/sprite_instance.{cpp,h}: add an execute_init_action
5546 method to be called by DoInitAction tag executor; add a
5547 YOUTUBE_HAVE_PRECEDENCE macro undefining which we get lots
5548 of new XPASS but break youtube... (pushing init actions
5550 * server/parser/movie_def_impl.cpp (add_init_action): store
5551 init actions togheter with all other control tags.
5552 * server/swf/DoActionTag.h (execute): call execute_init_action
5553 for init actions, execute them also by execute_state
5554 * testsuite/misc-swfc.all/: action_execution_order_test10.sc,
5555 movieclip_destruction_test1.sc: some successes (we'd get much
5556 more with YOUTUBE_HAVE_PRECEDENCE defined in sprite_instance.cpp)
5558 2007-11-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5560 * testsuite/actionscript.all/XML.as: adapt and reinclude
5561 test removed with last change.
5563 2007-11-14 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5565 * testsuite/actionscript.all/XML.as: adapt test for CDATA node;
5566 add XML comments (which should be ignored).
5567 * server/asobj/xml.cpp: (getXMLOptions) strip CDATA nodes
5568 and just add text (fixes part of bug 21268); (extractNode)
5569 drop comment nodes but continue to parse siblings (they can
5570 be siblings of a text node).
5571 * server/asobj/xmlnode.cpp: minor cleanups, better debugging output.
5573 2007-11-14 Sandro Santilli <strk@keybit.net>
5575 * testsuite/misc-ming.all/ButtonEventsTest.c: add self-contained
5576 tests for target in user-defined and clip-defined event handlers,
5577 plus setTarget('/') call when original target != the root
5578 (would have failed before the fix of bug #21572).
5579 Note that it takes some user interaction to trigger the
5580 self-contained tests.
5582 2007-11-14 Chad Musick <chadmusick@msbx.net>
5584 * server/PropertyList.cpp: Revert last change -- it includes new
5585 code and is premature.
5587 2007-11-14 Zou Lunkai <zoulunkai@gmail.com>
5589 * server/asobj/Key.cpp: mark built-in properties for Key object, fix a
5590 segfault with the old key listener design.
5592 2007-11-14 Chad Musick <chadmusick@msbx.net>
5594 * server/PropertyList.cpp: Be stricter about checking for things that
5595 could make insertions fail.
5597 2007-11-13 Sandro Santilli <strk@keybit.net>
5599 * testsuite/actionscript.all/targetPath.as: reverted last change, the
5600 test was completely bogus.
5602 2007-11-13 Sandro Santilli <strk@keybit.net>
5604 * testsuite/actionscript.all/targetPath.as: more tests for setTarget,
5605 could not reproduce the bug just fixed in find_target
5606 (would need actions defined in Button or statically-placed sprites).
5607 * server/as_environment.cpp (find_target): "/" is the root.
5610 2007-11-13 Sandro Santilli <strk@keybit.net>
5612 * testsuite/misc-ming.all/registerClassTest.c: add test for the
5613 return code of registerClass.
5615 2007-11-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5617 * testsuite/actionscript.all/XML.as: remove that bogus check (there
5618 _is_ already a test.)
5620 2007-11-13 Sandro Santilli <strk@keybit.net>
5622 * testsuite/misc-ming.all/registerClassTest.c: add expected
5623 number of tests run.
5625 2007-11-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5627 * testsuite/actionscript.all/XML.as: add first(!) test to check
5628 whether XML nodeValues are set. Gnash fails (always null).
5630 2007-11-13 Sandro Santilli <strk@keybit.net>
5632 * testsuite/misc-swfc.all/action_execution_order_test10.sc:
5633 Add a couple of (failing) tests and two lines of documentation
5634 (this test needs more documentation)
5636 2007-11-13 Zou Lunkai <zoulunkai@gmail.com>
5638 * server/asobj/Key.cpp: use new interface of get_member, fix compiling
5639 the old key listener design.
5641 2007-11-13 Sandro Santilli <strk@keybit.net>
5643 * testsuite/misc-ming.all/: DrawingApiTestRunner.cpp,
5644 masks_test2runner.cpp: add comments about cairo successes.
5646 2007-11-13 Zou Lunkai <zoulunkai@gmail.com>
5648 * testsuite/misc-ming.all/key_event_test.c, key_event_testrunner.cpp:
5649 few more tests in both swf file and testrunner, invoked a bug.
5650 * testsuite/misc-ming.all/key_event_test2.c, key_event_test3.c,
5651 key_event_test4.c, key_event_test5.c, key_event_test2runner.cpp,
5652 key_event_test3runner.cpp, key_event_test4runner.cpp,
5653 key_event_test5runner.cpp, KeyTest.as, KeyTest-Runner.cpp: dropped
5654 10 file, we don't need them now, tests were merged to key_event_test.c.
5656 2007-11-13 Sandro Santilli <strk@keybit.net>
5658 * server/StreamProvider.cpp (getStream): check security
5659 for post streams too.
5660 * server/sprite_instance.cpp (loadVariables):
5661 Don't abort on not-found url. Don't check security
5662 here as it will be checked by LoadVariablesThread.
5665 2007-11-12 Udo Giacomozzi <udo.gnu@nova-sys.net>
5667 * server/parser/shape_character_def.cpp: point_test_local bugfix:
5668 revert last commit and align test coordinate to a grid instead;
5669 commit some debug so I don't have to rewrite it again... ;)
5671 2007-11-12 Lucio Flavio Correa <lucio.correa@gmail.com>
5673 * gui/kdesup.h, gui/kde.cpp: implement setCuror (patch #6266).
5675 2007-11-12 Sandro Santilli <strk@keybit.net>
5677 * server/asobj/SoundFfmpeg.{cpp,h}: Add a LOADS_IN_SEPARATE_THREAD
5678 macro (defined by default) to disable threading, make the
5679 setupDecoder a non-static private and getAudio also private.
5681 2007-11-12 Sandro Santilli <strk@keybit.net>
5683 * server/asobj/SoundFfmpeg.cpp (getAudio): don't delete
5684 allocated memory twice. Fixes bug #21195.
5685 * gui/gnash.in: Add support for -G list for getting a list
5688 2007-11-12 Udo Giacomozzi <udo.gnu@nova-sys.net>
5690 * server/parser/shape_character_def.cpp: point_test_local bugfix:
5691 don't detect two crossings for the point at the junction of two
5694 2007-11-12 Sandro Santilli <strk@keybit.net>
5696 * server/shape.cpp: (pointOnCurve): quicker return for T in (0,1);
5697 (withinSquareDistance): compute distance from segments, not points,
5698 reducing iterations from 100 to 10 with no detectable precision
5700 * testsuite/swfdec/swfdec_gnash_tester: it seems diff -u3 doesn't work
5701 anymore (as of GNU diffutils 2.8.1)
5702 * server/: shape.cpp, tesselate.h: minor cleanup
5704 2007-11-12 Zou Lunkai <zoulunkai@gmail.com>
5706 * testsuite/misc-ming.all/Makefile.am, key_event_test.c, key_event_testrunner.cpp:
5707 merge all key related tests to key_event_test.c. deprecated key_event_test2,3,4,5
5708 and KeyTest.as to speed up 'make check'.
5710 2007-11-11 Sandro Santilli <strk@keybit.net>
5712 * server/sprite_instance.cpp (sprite_attach_movie): mark the character
5713 as dynamic before placing on stage (so stagePlacementCallback knows
5714 about that); (stagePlacementCallback): don't construct as object
5715 here, let that be done on INITIALIZE event; (on_event): construct
5716 as ActionScript object before running INITIALIZE handlers.
5717 Fixes bug #21556 (youtube regression).
5719 2007-11-10 Sandro Santilli <strk@keybit.net>
5721 * server/sprite_instance.cpp (goto_frame): always set
5722 _callingFrameActions to false before calling restoreDisplayList.
5723 Fixes an assertion failure playing make_sleep.swf.
5725 2007-11-10 Sandro Santilli <strk@keybit.net>
5727 * server/shape.{cpp,h}: add new poinOnCurve and squareDistancePtCurve
5728 static methods for gnash::edge, have path::withinSquareDistance
5729 use them for curves.
5730 * testsuite/misc-ming.all/DrawingApiTest.as: add self-contained
5731 equivalent test for the previously failing one checking hitTest
5733 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: success in
5734 green curve hit test.
5735 * testsuite/server/EdgeTest.cpp: test edge poinOnCurve.
5737 2007-11-10 Sandro Santilli <strk@keybit.net>
5739 * backend/render_handler_agg.cpp, backend/render_handler_cairo.cpp,
5740 backend/render_handler_ogl.cpp, server/shape.cpp, server/shape.h,
5741 server/parser/morph2_character_def.cpp,
5742 server/parser/shape_character_def.cpp:
5743 Changed path and edge classes to store a point (Point2d<float>)
5744 for anchor and control points.
5746 2007-11-10 Sandro Santilli <strk@keybit.net>
5748 * configure.ac: properly quote test arguments.
5750 2007-11-10 Sandro Santilli <strk@keybit.net>
5752 * (lots of files): typedefed gnash::point to Point2d<float>,
5753 drop some unused functions and cleaned up headers a bit.
5755 2007-11-10 Sandro Santilli <strk@keybit.net>
5757 * libgeometry/: Makefile.am, Point2d.h: initial implementation of
5758 a generalized point class.
5759 * testsuite/libgeometry/: Makefile.am, Point2dTest.cpp: initial
5760 test for the generalized point class.
5762 2007-11-09 Sandro Santilli <strk@keybit.net>
5764 * testsuite/samples/Makefile.am: don't giveup on failure
5765 * testsuite/misc-ming.all/DrawingApiTest.as: add test that would have
5766 exposed the just-fixed silly bug.
5767 * server/shape.cpp (withinSquareDistance): fixed silly bug checking
5768 for lines connecting origin with end of each edge rather then
5769 all edges. Prepared (but not implemented) section for curves.
5771 2007-11-09 Sandro Santilli <strk@keybit.net>
5773 * server/character.{cpp,h}: Add level argument to queueEvent method
5774 * server/movie_root.{cpp,h}: Add level argument to pushAction*
5775 * server/sprite_instance.cpp: Push actions with a level
5776 * testsuite/misc-ming.all/action_execution_order_test5.c: one XPASS
5777 * testsuite/misc-ming.all/displaylist_depths_test2.c: minor additional
5780 2007-11-09 Sandro Santilli <strk@keybit.net>
5782 * testsuite/misc-ming.all/registerClassTest2.c:
5784 * server/movie_root.cpp (dtor, clear): don't try to cleanup action queue
5786 * server/DynamicShape.h, server/parser/shape_character_def.h:
5787 override point_test_local in DynamicShape to finalize
5788 the drawing (bogus, contains comment for the why and how to fix)
5790 2007-11-08 Sandro Santilli <strk@keybit.net>
5792 * testsuite/actionscript.all/Global.as: add test for existence of
5793 updateAfterEvent (gnash fails).
5794 * server/as_environment.cpp (find_object_{slash,dot}syntax):
5795 use get_path_element instead of get_member to get next element
5796 from an old-style path.
5797 Fixes http://www.orgamez.com/files/swf/alphazoo.swf.
5798 * server/asobj/Color.cpp (color_ctor): parse first argument to
5799 Color constructor as a string (if not a MovieClip).
5800 Fixes http://www.lsfrench.com/school/couleur/colorepaint.swf.
5802 2007-11-08 Udo Giacomozzi <udo.gnu@nova-sys.net>
5804 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: reverted because
5805 that problem is still not solved (false PASS earlier)
5806 * server/parser/shape_character_def.cpp: modified point_test_local()
5807 again to solve problems with some corner cases. It still fails some
5808 rare situations on very complex graphics - I'm still working on that;
5809 failure reports are greatly appreciated!
5810 * testsuite/misc-ming.all/DrawingApiTest.as: some new PASSes
5812 2007-11-08 Markus Gothe <nietzsche@lysator.liu.se>
5814 * utilities/parser.cpp: dropped 'bool nodelay' since it's not used.
5816 2007-11-08 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5818 * server/as_value.cpp (doubletoString): replace C code with a c++
5819 implementation that ought to do the same thing. Uses stringstream
5820 and locale to imbue the result with the standard C locale, which
5821 fixes problems with locales that have a comma decimal separator.
5822 The test below should now pass in all locales.
5823 * testsuite/actionscript.all/Number.as: add tests for number formatting
5824 based on comments in server/as_value.cpp. Presently they should fail
5825 for locales with a comma decimal separator.
5827 2007-11-08 Sandro Santilli <strk@keybit.net>
5829 * server/vm/ASHandlers.cpp: fix compiler warnings
5830 * macros/sdl.m4: strip '-L/usr/lib' only if it's a single world
5831 (ie: not a substring like in -L/usr/lib64)
5832 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix test,
5833 self-name can't be evaluated.
5834 * testsuite/misc-swfc.all/Makefile.am: make Dejagnu.sc and check.sc
5835 dependencies of all .swf outputs.
5836 * testsuite/misc-swfc.all/Dejagnu.sc: typo fix: __global => _global
5838 2007-11-08 Zou Lunkai <zoulunkai@gmail.com>
5840 * testsuite/misc-swfc.all/Dejagnu.sc: don't create such a big text field bounding
5841 box for xtrace, it would hiden all button clicks located within the bounding box.
5842 Enlarge the bounding box when needed.
5843 * testsuite/misc-swfc.all/opcode_guard_test3.sc: new tests. found onButtonActions
5844 might not respect the opcode guard model.
5846 2007-11-07 Sandro Santilli <strk@keybit.net>
5848 * testsuite/misc-ming.all/shape_test.c: add Udog's drawing,
5849 open (upper) and closed (lower); left fill (left)
5850 and right fill (right).
5851 * testsuite/misc-ming.all/ming_utils.c (get_dejagnu_actions): don't
5852 use printf to write the code into a buffer, just make the code a
5853 const static const C-string.
5855 2007-11-07 Sandro Santilli <strk@keybit.net>
5857 * testsuite/misc-ming.all/DrawingApiTest.as: Add Udo's example drawing
5858 and associated hitTest tests (xfailing)
5859 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: Add pixel checking
5860 for Udo's example drawing (xfailing due to visible stroke)
5862 2007-11-07 Sandro Santilli <strk@keybit.net>
5864 * server/DynamicShape.cpp: close filled paths on pen move and
5865 ::finalize for last path.
5866 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: all pixel checking
5867 succeed now. The only failures left are hitTest-related. Time to
5868 resume the old point_test implementation.
5870 2007-11-07 Sandro Santilli <strk@keybit.net>
5872 * server/DynamicShape.{cpp,h}: Start new paths as new shapes
5873 when beginFill is called.
5874 * server/shape.{cpp,h}: add interfaces for setting m_new_shape
5875 both in constructors and standalone.
5876 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: fix the
5877 two-overlapping squares case.
5879 2007-11-07 Sandro Santilli <strk@keybit.net>
5881 * server/movie_root.cpp (display): skip display of null-sized levels.
5882 * testsuite/misc-ming.all/DrawingApiTest.as: have '-' and '+'
5883 use a step of 25% instead of 20% (easier for pixel checking);
5884 add hitTest for the opposite-el case.
5885 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: add pixel
5886 checking for the nested-squares cases.
5888 2007-11-07 Udo Giacomozzi <udo.gnu@nova-sys.net>
5890 * testsuite/libgeometry/snappingrangetest.cpp: update testcase
5891 to match new SnappingRanges design
5893 2007-11-07 Sandro Santilli <strk@keybit.net>
5895 * server/shape.cpp: don't forget to initialize m_new_shape
5896 in the overridden constructo !! This fixes uninitialized
5897 memory giving unstable results with the nested-squares
5898 cases in DrawingApiTest.swf
5899 * testsuite/libgeometry/snappingrangetest.cpp: don't
5900 attempt to set snap_distance, not more existent.
5901 I dunno if this makes the tests pointless (didn't
5902 check), but at least allows its build. Udo ?
5904 2007-11-06 Sandro Santilli <strk@keybit.net>
5906 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: pixel checking
5907 for some invalid drawing (missing the nested squares to complete).
5908 * testsuite/misc-ming.all/DrawingApiTest.as: 3 more nested squares:
5909 One with different edge directions for outer and inner squares
5910 (which doesn't make a difference), and one with a new beginFill
5911 call before drawing the second shape (which renders as two
5912 overlapping squares, try using '-' and '+' to change _alpha
5915 2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>
5917 * libgeometry/snappingrange.h: add range count limiting functionality
5918 and limit to 50 ranges by default; make copy constructor work again
5919 by adding getter methods for private members
5921 2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>
5923 * libgeometry/snappingrange.h: replace the distance method with a
5924 more efficient area before/after comparison method; make
5925 snap_factor and single_mode private members and provide access
5927 * libgeometry/Range2d.h: new getArea() function
5928 * gui/gui.cpp, server/character.cpp: apply snappingrange changes
5930 2007-11-06 Sandro Santilli <strk@keybit.net>
5932 * testsuite/misc-ming.all/DrawingApiTest.as: add self-contained test
5933 for the nested-square case, showing that gnash fails in hit-testing
5936 2007-11-06 Udo Giacomozzi <udo.gnu@nova-sys.net>
5938 * backend/render_handler_agg.cpp: Reverted last commit because it
5939 turned out that it really dropped performance (in some real world
5940 cases it was up to six times slower)
5942 2007-11-06 Sandro Santilli <strk@keybit.net>
5944 * testsuite/misc-ming.all/DrawingApiTest.as: add another interesting
5945 drawing in second drawing page (nested squares).
5946 * testsuite/misc-ming.all/Makefile.am: MEDIADIR define must use
5947 absolute path (the local sandboxes check isn't ready for relative
5949 * server/dlist.cpp (display): don't display masked characters
5951 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: fixed drawing
5952 of invisible masked characters.
5954 2007-11-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5956 * macros/freetype.m4: clean up space before default filename.
5958 2007-11-06 Sandro Santilli <strk@keybit.net>
5960 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: add test for
5961 setMask and invisible shapes (gnash fails).
5963 2007-11-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5965 * macros/freetype.m4: use fontconfig to find a default sans font for
5966 use if gnash runtime fails to find a suitable system font. Revert
5967 to the old hard-coded path if fc-match fails.
5968 * server/FreetypeGlyphsProvider.cpp: take DEFAULT_FONTFILE from
5971 2007-11-06 Sandro Santilli <strk@keybit.net>
5973 * testsuite/misc-ming.all/DrawingApiTest.as: add support for 'h' key
5974 hitting to change visibility of currently active drawing. Exposes
5975 a bug with setMask, which triggers drawing of the maskee even when
5977 * testsuite/misc-ming.all/DrawingApiTest.as: add a second drawing
5978 with 3 "invalid" shapes. Hitting a number key switches between
5979 the first (1) and second (2) drawing.
5981 2007-11-06 Markus Gothe <nietzsche@lysator.liu.se>
5983 * macros/libXML.m4: Cleaned up output.
5985 2007-11-05 Udo Giacomozzi <udo.gnu@nova-sys.net>
5987 * server/parser/shape_character_def.cpp: take outline hit test
5988 algorithm from old implementation; drop the old point_test
5989 method in favor of the new one; avoid browsing the paths
5990 in point_test_local() when the point is already out of the
5992 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp: two new PASSes
5994 2007-11-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
5996 * server/FreetypeGlyphsProvider.cpp: Pass bold and italic values
5997 to fontconfig for system fonts. Fixes bug #20597.
5999 2007-11-05 Udo Giacomozzi <udo.gnu@nova-sys.net>
6001 * server/parser/shape_character_def.cpp: Implement a new point_test
6002 algorithm (disabled by default since it's subject to discussion)
6004 2007-11-05 Bastiaan Jacques <bastiaan@bjacques.org>
6006 * backend/render_handler_agg.cpp: Use agg::renderer_mclip instead
6007 of agg::renderer_base, since the latter supports multiple clipping
6008 boxes. This allows us to apply all the clipping regions at once. A
6009 performance gain should be expected for movies with multiple
6012 2007-11-05 Sandro Santilli <strk@keybit.net>
6014 * testsuite/actionscript.all/TextField.as: add more test for
6015 TextField.variable (variable name). Variables can be in objects
6016 (not necessarely in sprites). Also, we got triggering of updates
6018 * configure.ac: make "missing KDE" message more didactic
6020 * server/shape.{cpp,h}: drop the point_test method, not much useful
6023 2007-11-05 Sandro Santilli <strk@keybit.net>
6025 * server/shape.{cpp,h}: extract a ray_crossing out of point_test.
6026 * server/parser/shape_character_def.cpp (point_test): use
6027 path::ray_crossing against any filled path, to detect fills
6028 composed by multiple paths. Fixes bug #21498.
6030 2007-11-02 Bastiaan Jacques <bastiaan@bjacques.org>
6032 * backend/render_handler_ogl.cpp: Add OSRenderMesa, a class
6033 implementing OSMesa's offscreen rendering system. Move
6034 ogl_accessible() to the render_handler_ogl class because it
6035 now needs access to members of that class. Remove the unused
6036 get_whole_shapes method. Implement getPixel and friends.
6037 Please note that this offscreen code is only enabled when
6038 OSMESA_TESTING is defined, which the build system currently
6039 does not yet do due to issues described in
6040 http://gnashdev.org/?q=node/46 .
6041 * server/gnash.h: Add an optional boolean argument to
6042 create_render_handler_ogl, which specifies whether the
6043 factory should immediately run OpenGL initialization code.
6044 This code should not be run immediately in the OSMesa case,
6045 since OpenGL calls should not be made until a context is
6046 available, which is not the case until initTestBuffer is
6047 called. initTestBuffer, in turn, cannot be called until
6048 renderer instantiation.
6049 * testsuite/MovieTester.cpp: Add support for OpenGL renderer
6052 2007-11-02 Sandro Santilli <strk@keybit.net>
6054 * gui/gui.cpp (getMovieInfo): add info about the current active
6057 2007-11-02 Sandro Santilli <strk@keybit.net>
6059 * server/asobj/Color.cpp: more bug fixes.
6060 * testsuite/actionscript.all/Color.as: more tests. Most pass
6061 except a suspicious one about some kind of rounding which is
6063 * testsuite/swfdec/PASSING: two more tests pass.
6065 2007-11-02 Sandro Santilli <strk@keybit.net>
6067 * server/asobj/Global.cpp: don't forget to initialize the Color class.
6068 * server/sprite_instance.{cpp,h}: add a _userCxform and accessor
6069 methods; override get_world_cxform to take it into account.
6070 * server/asobj/Color.cpp: implement {get,set}Transform and
6071 {get,set}RGB. Not 100% correct, but good progress on
6072 halloweenpaint.swf (see bug #21498)
6073 * testsuite/actionscript.all/Color.as: test {get,set}Transform and
6075 * testsuite/swfdec/PASSING: couple of color-related tests now succeed,
6078 2007-11-02 Sandro Santilli <strk@keybit.net>
6080 * server/drag_state.h: add x/y offset members.
6081 * server/movie_root.cpp (set_drag_state, doMouseDrag):
6082 implement relative dragging. Fixes bug #21496.
6084 2007-11-01 Sandro Santilli <strk@keybit.net>
6086 * gui/Player.cpp (run): make the window at least 1x1 pixels sized
6087 in a collapsed SWF header situation.
6089 2007-11-01 Sandro Santilli <strk@keybit.net>
6091 * server/character.{cpp,h}: remove the do_mouse_drag
6092 method. It's silly to call it for each sprite or button
6093 when at the end only a single character (if any) would
6094 do something useful with that.
6095 * server/: button_character_instance.cpp, sprite_instance.cpp:
6096 remove the do_mouse_drag call from the (advance) function.
6097 * server/movie_root.{cpp,h}: Move the doMouseDrag method
6098 here, as a private one, called from advance. Also, drag
6099 anyway, even if not correctly, when the drag is not
6100 lock-centered (to be fixed later).
6102 2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>
6104 * backend/render_handler.h: Document that draw_poly draws a
6105 thin border specified by the outline parameter.
6106 * backend/render_handler_ogl.{cpp,h}: Header/impl separation
6107 for class bitmap_info_ogl.
6109 2007-11-01 Sandro Santilli <strk@keybit.net>
6111 * libbase/GnashException.h: Add ActionTypeError exception.
6112 * server/as_value.{cpp,h} (to_primitive): a closer to ECMA-262
6113 [[ToPrimitive]] implementation.
6114 * server/vm/ASHandlers.cpp: update use of as_value::to_primitive.
6115 * testsuite/actionscript.all/toString_valueOf.as: two successes.
6116 * testsuite/swfdec/PASSING: some more successes.
6117 * server/vm/fn_call.h (dump_args): print debug string version
6120 2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>
6122 * backend/render_handler_cairo.cpp: Implement draw_poly.
6124 2007-11-01 Bastiaan Jacques <bastiaan@bjacques.org>
6126 * backend/render_handler.h: Document that renderers should
6127 ignore subshapes in glyphs, as demonstrated by Agg and
6128 evidenced in text-test.swf.
6129 * backend/render_handler_{cairo,ogl}.cpp: draw_glyph: call
6130 draw_subshape directly with all paths, since subshapes should
6133 2007-10-31 Bastiaan Jacques <bastiaan@bjacques.org>
6135 * backend/render_handler_ogl.h: New header file; the beginnings
6136 of header/implementaion separation.
6137 * backend/render_handler_ogl.cpp: New OpenGL renderer
6138 implementation. In this initial version, support for subshapes
6139 and poor man's anti-aliasing (only filled shapes are affected)
6140 are added. The new renderer will facilitate the addition of
6141 more good stuff, like real anti-aliasing and to eliminate the
6142 many remaining OpenGL bugs. Simple masking now works.
6143 * gui/gtk_glue_cairo.cpp: Use a RGBA buffer by default.
6144 * gui/gtk_glue_gtkglext.cpp: Enable the stencil buffer rather
6145 than the depth buffer, since the former is used while the
6148 2007-10-31 Sandro Santilli <strk@keybit.net>
6150 * testsuite/actionscript.all/TextField.as: add test for
6151 toString/valueOf properties (un)availability.
6152 * server/vm/ASHandlers.cpp (ActionNewAdd): don't assume
6153 stack element references are valid after calls to to_primitive.
6156 2007-10-30 Sandro Santilli <strk@keybit.net>
6158 * lots of files: assert(0) -> abort()
6160 2007-10-30 Sandro Santilli <strk@keybit.net>
6162 * testsuite/actionscript.all/toString_valueOf.as: add a test which
6163 seems to be killing gnash (segfault).
6165 2007-10-30 Sandro Santilli <strk@keybit.net>
6167 * server/as_value.cpp (to_debug_string): assert(0) => abort()
6168 [ to abort when NDEBUG is defined ]
6169 * server/character.h (markCharacterReachable): mark mask as
6172 2007-10-30 Sandro Santilli <strk@keybit.net>
6174 * gui/Player.cpp (run): don't give up if the movie has collapsed size.
6175 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp:
6176 Check rendering effects of the setMask call.
6178 2007-10-30 Sandro Santilli <strk@keybit.net>
6180 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp:
6181 Check hitdetector bounds and reactions on mouse movement
6182 * gui/gui.{cpp,h}: Add support for mouse pointer movements using the
6183 keyboard arrow keys. Support is currently enabled but can be
6184 switched off at compile time. If compile-time enabled support can
6185 still be toggled at runtime, currently defaults to enabled and
6186 menu items to toggle it are missing.
6188 2007-10-30 Sandro Santilli <strk@keybit.net>
6190 * server/dlist.cpp (display): don't render dynamic masks.
6191 * testsuite/misc-ming.all/masks_testrunner.cpp: no more failures here.
6193 2007-10-30 Sandro Santilli <strk@keybit.net>
6195 * testsuite/misc-ming.all/masks_testrunner.cpp: add tests for effects
6196 of swapDepth on dynamic masks (gnash fails).
6198 2007-10-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
6200 * server/parser/sound_definition.{cpp,h}: move execute_state actions
6201 to execute. Fixes bug #21465.
6203 2007-10-30 Sandro Santilli <strk@keybit.net>
6205 * server/character.h (setMask): set character as invalidated
6206 when it's mask change. Needs more care: when the mask itself
6207 changes, we should find a way to invalidate the maskee as well,
6208 but we currently have no refefence from the mask to the maskee.
6209 * server/dlist.cpp (display): add support for dynamic masks.
6210 Needs more care: test what happens with nested masks, check if
6211 it is possible to trigger infinite recursions.
6212 * server/sprite_instance.cpp (sprite_setMask); draft support for
6213 setMask. Needs more care: forbid a character to mask itself,
6214 see care needed in dlist to avoid infinite recursion (A masks B
6215 contining B2 maksing A)
6216 * testsuite/misc-ming.all/DrawingApiTest.as: turn user-defined cursor
6217 into a mask or disable the mask on click (toggle). Needs testing
6219 * testsuite/misc-ming.all/masks_test.c: add comments.
6220 * testsuite/misc-ming.all/masks_testrunner.cpp: add section testing
6221 for setMask effects on rendering. Needs more care: add test for
6222 effect of swapDepth on next advance.
6225 2007-10-30 Chad Musick <chadmusick@msbx.net>
6227 * server/StreamProvider.cpp: Even if LIBCURL is not being used,
6228 URLAccessManager.h must be included.
6229 * server/as_object.h,.cpp: Make instanceOf a recursive function
6230 so that non-proper properties, like interfaces, will be correctly
6231 searched. Add get_super() and get_constructor() functions, not yet
6233 * server/namedStrings.h,.cpp: Add another anonymous string.
6234 * server/asobj/ClassHierarchy.cpp: Add prototypes to loaded objects if
6235 they don't do so themselves.
6236 * server/vm/ASHandlers.cpp: ImplementsOp -- not quite working, yet.
6237 * server/vm/Machine.h,.cpp: More work toward AS3 ability.
6238 * testsuite/actionscript.all/Date.as: Fix bogus test -- the time
6239 returned depends on local timezone, so you can't check to the second.
6240 * server/vm/SafeStack.h, server/vm/CodeStream.h -- Comment updates.
6242 2007-10-29 Sandro Santilli <strk@keybit.net>
6244 * testsuite/MovieTester.cpp (checkPixel): multiply tolerance by
6245 minimum renderer tolerance.
6246 * testsuite/misc-ming.all/masks_testrunner.cpp: fix color values,
6247 which reveals all tests pass (need to add tests for setMask next).
6248 * server/character.h: add setMask, getMask, isDynamiMask,
6249 rename isMask to isMaskLayer, add change isMask to check both
6250 dynamic and static masks.
6251 * server/dlist.cpp: replace isMask with isMaskLayer
6253 2007-10-27 Sandro Santilli <strk@keybit.net>
6255 * server/as_object.{cpp,h} (findUpdatableProperty): return
6256 static properties in inheritance chain if found, as correctly
6257 documented in the header file (need an ABC compiler for real
6260 2007-10-27 Bastiaan Jacques <bastiaan@bjacques.org>
6262 * various Makefile.am: Remove libgnashbackend, since it is
6263 unused and OS X's `ar' chokes on the empty archive we
6265 * gui/Makefile.am: Don't put the gnash script in the Carbon
6266 bundle; instead, put bin_PROGRAMS in it.
6267 * gui/aqua.cpp: Implement the event loop necessary to draw
6269 * gui/aqua_glue.h: Pass a window pointer to the rendering glue
6270 so the glue can attach the renderer to the window.
6271 * gui/aqua_ogl_glue.{cpp,h}: Implement the aqua GUI by setting
6272 up an OpenGL context.
6273 * gui/gui.h: Add a default implementation for setInterval since
6274 it is the same for most renderers.
6276 2007-10-27 Sandro Santilli <strk@keybit.net>
6278 * testsuite/swfdec/PASSING: add new successes
6279 from updated swfdec snapshot.
6281 2007-10-27 Sandro Santilli <strk@keybit.net>
6283 * server/as_prop_flags.h: add clear_visible method.
6284 * server/Property.h: add clearVisible method
6285 * server/as_object.cpp: clear visibility flags after
6287 * testsuite/simple.exp: double timeout.
6288 * testsuite/actionscript.all/Global.as: more successes
6289 (still not completed).
6291 2007-10-27 Sandro Santilli <strk@keybit.net>
6293 * testsuite/actionscript.all/Global.as: use 'delete a.b'
6294 instead of 'delete(a.b)' -- the latter wasn't supported
6295 by erlier Ming versions.
6297 2007-10-27 Sandro Santilli <strk@keybit.net>
6299 * testsuite/actionscript.all/Global.as: more tests about invisible
6300 flags over inherited getter-setters (most failures are for SWF6
6303 2007-10-27 Sandro Santilli <strk@keybit.net>
6305 * server/as_object.cpp (findUpdatableProperty): don't overlook
6306 invisible properties in *this* object, it'll be eventually
6308 * testsuite/actionscript.all/Global.as: more successes.
6310 2007-10-27 Sandro Santilli <strk@keybit.net>
6312 * testsuite/actionscript.all/Global.as: test ignore property flags
6313 effect on inherited gettersetter.
6315 2007-10-26 Sandro Santilli <strk@keybit.net>
6317 * server/as_object.cpp: have __proto__ respect the same
6318 visibility rules of other properties, check visibility
6319 rules in findUpdatableProperty.
6320 * testsuite/swfdec/PASSING: one more test passing (more failing
6323 2007-10-26 Tomas Groth Christensen <tomasgroth@yahoo.dk>
6325 * server/parser/video_stream_def.cpp: Check if iterator is valid, before
6326 using it. Fixes bug #21442.
6328 2007-10-26 Sandro Santilli <strk@keybit.net>
6330 * server/as_prop_flags.h: add version-based ignore flags.
6331 * server/Property.h: expose an isVisible(int ver) method.
6332 * server/as_object.{cpp,h} (findProperty): ignore invisible
6334 * testsuite/swfdec/PASSING: success for all versions from
6335 ASSetPropFlags-ignore.as
6337 2007-10-26 Sandro Santilli <strk@keybit.net>
6339 * extensions/gtk2/gtkext.cpp: use init_member to initialize interface
6342 2007-10-26 Tomas Groth Christensen <tomasgroth@yahoo.dk>
6344 * libmedia/FLVParser.h, libmedia/MediaParser.h: Move the videoFrameType
6345 definition from FLVParser.h to MediaParser.h.
6346 * libmedia/VideoDecoder.h, libmedia/gst/VideoDecoder{Gst,ffmpeg}.{h,cpp}:
6347 Make decodeToImage return a auto_ptr (again).
6348 * server/video_stream_instance.cpp: We now receive the decoded image in a
6350 * server/parser/video_stream_def.{h,cpp}: Changed decoding of embedded video
6351 to be on-demand, instead of at-parse. If asked to decode a random frame, we
6352 rewind to the lastest keyframe (or the last decoded frame) and decode all
6353 the frames needed to produce the requested frame.
6355 2007-10-26 Markus Gothe <nietzsche@lysator.liu.se>
6357 * configure.ac: Added quotation-marks around $extensions_list.
6359 2007-10-26 Sandro Santilli <strk@keybit.net>
6361 * server/as_object.{cpp,h}: expose a get_path_element method
6362 being the semantically equivalent to the replaced
6363 character::find_relative_target
6364 * server/character.{cpp,h}, server/button_character_instance.{cpp,h},
6365 server/sprite_instance.{cpp,h}:
6366 Adapt find_relative_target to the new get_path_element.
6367 * server/as_environment.cpp (find_target): use the new
6368 get_path_element for paths resolution.
6369 * testsuite/actionscript.all/: targetPath.as, with.as: some successes.
6371 2007-10-26 Sandro Santilli <strk@keybit.net>
6373 * testsuite/actionscript.all/with.as: test that '..' is
6374 a legal path component in a setTarget call.
6376 2007-10-26 Sandro Santilli <strk@keybit.net>
6378 * server/asobj/string.cpp: fix substring(0,1).
6379 * testsuite/actionscript.all/String.as: test substring(0,1)
6380 * testsuite/actionscript.all/Date.as: add test for adding Date
6381 instance to a number.
6383 2007-10-26 Sandro Santilli <strk@keybit.net>
6385 * server/as_object.h: add virtual isDateObject() method.
6386 * server/asobj/Date.cpp: implement isDateObject, have valueOf
6387 always return a number.
6388 * server/as_value.{cpp,h}: to_primitive for date objects returns
6389 a string rather then a number.
6391 2007-10-25 Sandro Santilli <strk@keybit.net>
6393 * testsuite/actionscript.all/Date.as: couple more tests.
6394 * testsuite/actionscript.all/targetPath.as: add a failing test
6395 as borrowed from swfdec
6396 * testsuite/actionscript.all/MovieClip.as: test _parent is not
6397 a proper property (gnash fails)
6398 * testsuite/actionscript.all/getvariable.as: more tests for
6399 getvariable/setvariable.
6401 2007-10-25 Udo Giacomozzi <udo.gnu@nova-sys.net>
6403 * server/asobj/Date.cpp: date_valueof() returns human readable date
6404 for SWF > 5 (fixes bug #21414)
6405 * testsuite/actionscript.all/Date.as: 1 PASS
6406 * testsuite/actionscript.all/toString_valueOf.as: 2 PASSes
6407 * server/asobj/Date.cpp: getTime() still has to return a numeric value
6408 * testsuite/actionscript.all/Date.as: add a check for getTime()
6410 2007-10-25 Sandro Santilli <strk@keybit.net>
6412 * testsuite/swfdec/PASSING: new swfdec tests passing
6414 2007-10-25 Sandro Santilli <strk@keybit.net>
6416 * server/asobj/Global.cpp (global_trace): pass environment to
6417 as_value::to_string.
6418 * server/as_environment.{cpp,h}: drop find_target taking as_value.
6419 * server/sprite_instance.cpp, server/asobj/MovieClipLoader.cpp,
6420 server/vm/ASHandlers.cpp: update calls to find_target (always
6421 takes a string now).
6423 2007-10-25 Udo Giacomozzi <udo.gnu@nova-sys.net>
6425 * testsuite/actionscript.all/Date.as: Added testcase for bug #21414
6428 2007-10-25 Sandro Santilli <strk@keybit.net>
6430 * testsuite/misc-swfc.all/opcode_guard_test2.sc: add more consistency
6431 checks for zou new tests.
6432 * server/as_environment.cpp (find_target): always use current, not
6434 * server/vm/ASHandlers.{cpp,h} (CommonSetTarget): reset target as first
6435 thing, so that find_target won't use previously current target
6436 to resolve relative paths.
6438 2007-10-24 Sandro Santilli <strk@keybit.net>
6440 * testsuite/actionscript.all/with.as: more setTarget tests (failing)
6442 2007-10-24 Sandro Santilli <strk@keybit.net>
6444 * server/as_environment.cpp (find_target): use original target
6446 * testsuite/swfdec/PASSING: succeed in settarget-relative-*.swf
6448 2007-10-24 Sandro Santilli <strk@keybit.net>
6450 * server/vm/ASHandlers.cpp (CommonSetTarget):
6451 Reset to original target if argument doesn't correspond
6453 * testsuite/swfdec/PASSING: succeed in settarget (still not all)
6455 2007-10-24 Sandro Santilli <strk@keybit.net>
6457 * server/asobj/string.cpp (string_sub_str): fix corner cases
6458 exposed by swfdec's substr tests.
6459 * testsuite/swfdec/PASSING: succeed in substr tests.
6461 2007-10-24 Sandro Santilli <strk@keybit.net>
6463 * server/PropertyList.cpp: addProperty can always override
6464 pre-existing properties, and inherits flags in that case.
6465 * testsuite/swfdec/PASSING: addProperty-flags succeeds.
6466 * testsuite/swfdec/gen_run_swfdec_testsuite.sh: include md5
6467 in PASS/FAIL lines (for easier copy&paste into PASSING)
6469 2007-10-24 Sandro Santilli <strk@keybit.net>
6471 * server/asobj/Object.cpp: don't replicate all exported interfaces
6472 to the Object class; move registerClass from prototype to class;
6473 have hasOwnProperty return false on invalid calls.
6474 * testsuite/actionscript.all/Object.as: one more success, more
6475 tests needed for hasOwnProperty calls.
6477 2007-10-24 Sandro Santilli <strk@keybit.net>
6479 * server/vm/VM.{cpp,h}: initial support for a native functions table.
6480 * server/asobj/Global.cpp: ASnative global.
6481 * server/asobj/Object.cpp: register Objects' natives (101 series).
6483 2007-10-24 Sandro Santilli <strk@keybit.net>
6485 * testsuite/swfdec/: PASSING, gen_run_swfdec_testsuite.sh, README:
6486 Include md5sum of known-to-pass tests so updates in swfdec
6487 testsuite don't introduce unexpected failures.
6489 2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>
6491 * backend/render_handler_agg_style.h: don't force premultiply()
6492 for RGBA bitmaps, fixes bug #20972 (hopefully...)
6494 2007-10-24 Sandro Santilli <strk@keybit.net>
6496 * testsuite/swfdec/PASSING: new succeeding tests from swfdec
6497 testsuite. Note that prototype-recursion-* tests prevent
6498 the full testsuite from being run as gnash goes into an infinite
6499 recursion failling to detect max call stack limit (our
6500 getter/setters use a brand new as_environment, and thus stack
6501 everytime they are invoked).
6503 2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>
6505 * extensions/fileio/fileio.cpp: Fixed a bug in fgets() which
6506 caused a segfault on empty files
6507 * extensions/fileio/Makefile.am: fixed GNASH_PLUGINS env.
6510 2007-10-24 Sandro Santilli <strk@keybit.net>
6512 * cygnal/ACT/Makefile.am: distribute test_support and unit_tests
6514 * extensions/Makefile.am: distribute metome subdir
6516 2007-10-24 Sandro Santilli <strk@keybit.net>
6518 * server/sprite_instance.cpp (get_topmost_mouse_entity): don't
6519 segfault if the root movie can handle mouse events :/
6521 2007-10-24 Udo Giacomozzi <udo.gnu@nova-sys.net>
6523 * libgeometry/snappingrange.h: add routines for calculating
6524 intersections between SnappingRanges
6525 * server/dlist.cpp: optimize add_invalidated_bounds() for
6526 masks (don't invalidate outside of masks)
6527 * backend/render_handler_agg.cpp: never use even-odd filling
6528 rules when drawing a mask (unlike normal shapes); some cleanup
6529 * gui/fb.cpp: Limit pointing device events reading loop
6531 2007-10-24 Sandro Santilli <strk@keybit.net>
6533 * server/as_object.{cpp,h}: add update_member to only
6534 update pre-existing members (including getter-setter
6535 in the inheritance chain).
6536 * server/as_environment.cpp (set_variable_raw): only
6537 set members of elements in the scope stack if
6539 * testsuite/actionscript.all/: Object.as, with.as:
6540 success for the new failing tests.
6542 2007-10-23 Sandro Santilli <strk@keybit.net>
6544 * configure.ac: abort if no supported GUI are selected.
6546 2007-10-23 Markus Gothe <nietzsche@lysator.liu.se>
6548 * macros/glib.m4; Fixed out put.
6549 * macros/sdl.m4: Fixed bogus -I.
6551 2007-10-23 Takashi Iwai <tiwai@suse.de>
6553 * plugin/plugin.cpp: include <cstring>
6554 * libmedia/MediaParser.h: include <memory>
6555 * libmedia/sound_handler.h: include <cstring>
6557 2007-10-23 Sandro Santilli <strk@keybit.net>
6559 * testsuite/actionscript.all/Object.as: more failures about
6560 setting members which has a normal property in the inheritance
6561 chain but a getter-setter higher in the chain.
6562 * testsuite/actionscript.all/with.as: more failures !
6563 * macros/sdl.m4: cleanups
6564 * configure.ac: use test, not the ``['' command, in m4 macros.
6565 * server/URLAccessManager.cpp (allow): fix assertion checking.
6566 * testsuite/misc-ming.all/ming_utils.h: provide a CALLFRAME
6567 macro to use the syntax recognized by the detected Ming
6569 * testsuite/misc-ming.all/: frame_label_test.c, path_format_test.c:
6570 use CALLFRAME instead of callFrame.
6572 2007-10-22 Sandro Santilli <strk@keybit.net>
6574 * server/movie_root.{cpp,h}: don't update viewport size on setLevel,
6575 still do in setRootMovie.
6577 2007-10-22 Sandro Santilli <strk@keybit.net>
6579 * gui/gui.cpp (resize_view): only change scale if rescaling of Stage
6580 is allowed (WARNING: might fail if movie starts in noScale mode..)
6581 * server/asobj/Stage.cpp (setScaleMode): always update movie_root
6582 "allow scale" flag when scaleMode changes.
6584 2007-10-22 Rob Savoye <rob@ripple.welcomehome.org>
6586 * configure.ac: Build Makefiles in cygnal/ACT sub dirs, add metome
6587 extension. Also display proper values for Boost libs.
6588 * Makefile.am: Dispplay boost values correctly for missing
6589 libraries, both required and optional.
6590 * macros/boost.m4: Make extra libraries used for testing it's own
6591 BOOST_EXTRA_LIBS variable to avoid linking problems.
6592 * extensions/metome: New directory for the soon-to-be-available
6594 * extensions/metome/Makefile.am, metome_ext.{h,cpp}: New support
6597 * configure.ac: Print out a warning for missing boost libraries
6598 that are only recommended, and not required.
6599 * macros/boost.m4: Look for some libraries that are only needed
6600 for testing, but still flag the user if they aren't found.
6602 2007-10-22 Udo Giacomozzi <udo.gnu@nova-sys.net>
6604 * server/asobj/Stage.cpp: corrected Stage.width and Stage.height,
6607 2007-10-22 Sandro Santilli <strk@keybit.net>
6609 * configure.ac: fix docmentation for --enable-cygnal
6610 (is not more --disable-cygnal, as it's off by default).
6612 2007-10-21 Rob Savoye <rob@ripple.welcomehome.org>
6614 * macros/boost.m4: Add unit_test_framework for Cygnal tests.
6616 2007-10-20 Sandro Santilli <strk@keybit.net>
6618 * testsuite/misc-mtasc.all/Makefile.am: distribute Derived1.as
6619 and Base1.as. distcheck now works for me.
6620 * testsuite/Makefile.am: distribute gnashrc.in
6621 * testsuite/misc-ming.all/Makefile.am: provide MEDIADIR
6622 macro as absolute path.
6623 * testsuite/misc-ming.all/NetStream-SquareTestRunner.cpp:
6624 allow load of data from MEDIADIR.
6626 2007-10-20 Sandro Santilli <strk@keybit.net>
6628 * server/asobj/xml.{cpp,h}: rework the way XML is loaded:
6629 read all input and call onData, providing a default one.
6630 Still misses a background thread, but is a bit more correct
6631 now, in that allows overriding onData.
6632 * testsuite/actionscript.all/XML.as: succeeds in finding
6633 onData in XML.prototype.
6635 2007-10-20 Sandro Santilli <strk@keybit.net>
6637 * testsuite/Makefile.am: fix MEDIADIR path (for gnashrc)
6638 * testsuite/actionscript.all/Makefile.am: use testsuite/gnashrc
6639 for running tests (so loads from MEDIADIR are allowed).
6641 2007-10-20 Sandro Santilli <strk@keybit.net>
6643 * testsuite/misc-ming.all/loadMovieTestRunner.cpp: allow loads from
6645 * testsuite/actionscript.all/XML.as: test where onData is defined.
6646 * libbase/LoadThread.{cpp,h}: add support for cancelling load
6649 2007-10-20 Sandro Santilli <strk@keybit.net>
6651 * testsuite/: .cvsignore, Makefile.am, gnashrc.in:
6652 Add a testsuite-local gnashrc to enable loading local
6653 resources from the MEDIADIR.
6655 2007-10-20 Sandro Santilli <strk@keybit.net>
6657 * doc/C/usermanual/usage/gnashrc.xml: document new localSandboxPath
6659 * libbase/rc.cpp: support localSandboxPath (set, append) directive.
6660 * testsuite/libbase/: TCXXRc.cpp, gnashrc-local.in, gnashrc.in:
6661 test localSandboxPath append and set.
6663 2007-10-20 Sandro Santilli <strk@keybit.net>
6665 * testsuite/MovieTester.cpp: call set_base_url *before*
6667 * libbase/rc.h: add a "local sandboxes" configuration.
6668 This is not yet allowed to be set in .gnashrc, but
6669 can be set by internal calls.
6670 * server/StreamProvider.cpp: check security also in
6671 the local resource case.
6672 * server/URLAccessManager.{cpp,h}: check local resources
6673 against the sandboxes list of RcInitFile.
6674 * server/impl.cpp (set_base_url): push base url to
6675 the local sandboxes.
6676 * testsuite/actionscript.all/XML.as: add (failing) test for
6679 2007-10-20 Sandro Santilli <strk@keybit.net>
6681 * server/URLAccessManager.{cpp,h}, server/asobj/xmlsocket.cpp
6682 Don't expose allowHost w/out port, rename allowHost (with port)
6685 2007-10-19 Udo Giacomozzi <udo.gnu@nova-sys.net>
6687 * gui/fb.cpp: Added a few more key scan codes
6689 2007-10-19 Sandro Santilli <strk@keybit.net>
6691 * server/swf/tag_loaders.cpp (file_attributes_loader):
6692 Update message and add TODO list based on a talk with
6693 Benjamin Otte on #gnash.
6695 2007-10-19 Sandro Santilli <strk@keybit.net>
6697 * libmedia/VideoDecoder.h: add getPaddingBytes.
6698 * libmedia/sdl/VideoDecoderFfmpeg.h: implement getPaddingBytes
6699 using the ffmpeg define.
6700 * server/parser/video_stream_def.cpp: use getPaddingBytes
6701 to find out how much to pad.
6703 2007-10-19 Udo Giacomozzi <udo.gnu@nova-sys.net>
6705 * gui/fb.cpp, gui/fbsup.h: Preliminary support for keyboard input;
6706 implemented mouse handler using Linux Input Subsytem (made new
6707 default); simple built-in touchscreen calibration/conversion;
6708 preliminary input device configuration via environment variables
6710 2007-10-19 Sandro Santilli <strk@keybit.net>
6712 * server/parser/video_stream_def.{cpp,h}: split read into
6713 readDefineVideoStream and readDefineVideoFrame, make
6714 presence of a non-null _decoder member a sign of a
6715 completed call to readDefineVideoStream (thus a sign
6716 of a statically-defined videostream vs. a dynamically
6717 created one [ using new Video ] ).
6718 * server/swf/tag_loaders.cpp: update calls to video_stream_def
6721 2007-10-19 Sandro Santilli <strk@keybit.net>
6723 * server/parser/video_stream_def.cpp (read): rework the input
6724 buffer padding to be cleaner, safer and a bit faster (only
6725 memset the pad); (destructor): get rid of the embedded video
6726 frames. Add TODO items.
6728 2007-10-19 Sandro Santilli <strk@keybit.net>
6730 * server/parser/video_stream_def.{cpp,h}: keep _decoder by
6731 boost::scoped_ptr. Fixes bug #21284.
6732 * server/swf/tag_loaders.cpp (video_loader): don't abort on malformed
6735 2007-10-19 Tomas Groth Christensen <tomasgroth@yahoo.dk>
6737 * backend/Makefile.am: Only compile render_handler_tri.cpp if
6738 using the OpenGL backend.
6740 2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>
6742 * macros/mtasc.m4: Don't prepend a path to test with "x".
6744 2007-10-19 Markus Gothe <nietzsche@lysator.liu.se>
6746 * plugin/plugin.cpp, macros/boost.m4: Added year 2007.
6748 2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>
6750 * backend/render_handler_cairo.cpp: initTestBuffer: fix a set of
6751 typos to allow the testsuite to actually test the renderer. No
6752 XFAILs so far; one XPASS (masks_test2runner.cpp:58).
6754 2007-10-18 Sandro Santilli <strk@keybit.net>
6756 * server/edit_text_character.{cpp,h}: send onSetFocus and onKillFocus
6759 2007-10-18 Sandro Santilli <strk@keybit.net>
6761 * server/edit_text_character.{cpp,h}: fix an invalidated bounds
6762 problem on set/kill focus.
6764 2007-10-18 Tomas Groth Christensen <tomasgroth@yahoo.dk>
6766 * libmedia/VideoDecoder.h,libmedia/gst/VideoDecoder{Ffmpeg.Gst}.{h,cpp}:
6767 Changed decodeToImage to return a raw image::image_base pointer.
6768 * server/video_stream_instance.{cpp,h},server/parser/video_stream_def.{h,cpp}:
6769 Changed to do decoding of video stream on parsing, and not on demand.
6771 2007-10-18 Chad Musick <chadmusick@msbx.net>
6773 * testsuite/swfdec/PASSING: More than 20 newly passing tests.
6775 2007-10-18 Sandro Santilli <strk@keybit.net>
6777 * server/movie_root.{cpp,h}: add getActiveEntityUnderPointer method.
6778 * server/character.h: add virtual isSelectableTextField() method.
6779 * server/edit_text_character.h: implement isSelectableTextField()
6780 * gui/gui.cpp: use getActiveENtityUnderPointer and
6781 isSelectableTextField to provide an INPUT cursor rather then
6782 an HAND when the active entity under pointer is a selectable
6785 2007-10-18 Sandro Santilli <strk@keybit.net>
6787 * server/: movie_root.{cpp,h}, edit_text_character.cpp:
6788 Renamed movie_root::{get,set}_active_entity to
6789 movie_root::{get,set}Focus for clarity, and documented it.
6790 * testsuite/swfdec/PASSING: we now pass
6791 addProperty-get-prototypes-{6,7,8}.swf
6793 2007-10-18 Bastiaan Jacques <bastiaan@bjacques.org>
6795 * testsuite/MovieTester.cpp: Conditionally include cairo header.
6797 2007-10-18 Chad Musick <chadmusick@msbx.net>
6799 * server/Property.cpp: New file -- Definition of properties now requires
6800 some support functions.
6801 * server/GetterSetter.cpp,.h -- Obsolete file removal, functionality moved
6803 * server/vm/asName.h -- New file, split and combined from abc_block.h and
6805 * libbase/string_table.cpp,.h -- Make all empty strings return 0, make a
6806 new function for combining two values with a dot.
6807 * server/Makefile.am -- Remove GetterSetter files, add Property.cpp
6808 * server/Property.h -- Combine all 3 types (ordinary, getter/setter,
6809 destructive getter/setter) into a single class, Property, using boost::
6810 variant. Remove all virtual functions. Add key and namespace.
6811 * server/PropertyList.h,.cpp -- Change container to a multi-index storing
6812 properties by value rather than by pointer, add functions for retrieval
6813 by order number (for AS3). Remove all virtual functions.
6814 * server/array.cpp,.h -- Change get_member signature to match the one in
6815 as_object which now includes a namespace.
6816 * server/asClass.cpp -- Change asMethod and asClass to use an as_object
6818 * server/asClass.h -- Move asName out. Change asMethod and asClass to new
6820 * server/as_function.cpp -- Add checks for prototype.
6821 * server/as_object.cpp -- Chnage to new PropertyList style, some early
6822 code for interfaces (ImplementsOp) which should be working soon.
6823 * server/as_object.h -- Support for new PropertyList. Unfinished support
6825 * server/as_prop_flags.h -- Added flag for static members, changed
6826 protected variable to a flag.
6827 * server/as_value.cpp,.h -- Stubs for implements and namespace support.
6828 * server/edit_text_character.cpp,.h -- Change to namespace get_member
6829 * server/namedStrings.cpp,.h -- Add some anonymous strings. These can
6830 only be used if you already know their number and are invisible to
6831 clients of the object.
6832 * server/sprite_instance.cpp,.h -- Change to namespace get_member
6833 * server/stream.cpp -- Depends on Property
6834 * server/asobj/ClassHierarchy.cpp,.h -- Use SafeStack instead of
6835 memoryDispenser, change to conform to new definitions of some classes.
6836 * server/asobj/Object.cpp -- Make sure construct has Object prototype
6837 set as "prototype" members.
6838 * server/asobj/xml.cpp,.h -- Use namespace get_member.
6839 * server/parser/abc_block.cpp,.h -- Change to conform to new asClass and
6840 asMethod. No longer safe to call read() in non-AS thread. abc_Multiname
6841 became asName (merged with asName from asClass.h) and was moved to its
6842 own file. Double pool changed from 'long double' to 'double'.
6843 * server/swf/tag_loaders.cpp -- Remove read() call from loading abc_block,
6844 since this is no longer safe to do in loader thread.
6845 * server/vm/Machine.cpp,.h -- Numerous steps towards completion.
6846 * server/vm/VM.h -- Add Machine member to VM object.
6847 * testsuite/server/Makefile.am -- Remove obsolete GetterSetterTest
6848 * testsuite/server/GetterSetterTest.cpp -- Removed as obsolete.
6850 2007-10-17 Bastiaan Jacques <bastiaan@bjacques.org>
6852 * backend/render_handler_cairo.cpp: Implement getPixel and
6853 related methods to enable automated renderer testing.
6854 * backend/Makefile.am: Add CAIRO_LIBS.
6855 * gui/gtk_glue_cairo.cpp: Let the renderer deal with
6856 cairo_t destruction.
6857 * testsuite/Makefile.am: Add CAIRO_CFLAGS so we can include
6858 render_handler_cairo.h.
6859 * testsuite/MovieTester.cpp: Enable Cairo renderer testing.
6861 2007-10-17 Sandro Santilli <strk@keybit.net>
6863 * server/edit_text_character.{cpp,h}: add initial support for
6864 TextField.selectable
6865 * testsuite/actionscript.all/TextField.as: update expected
6868 2007-10-17 Bastiaan Jacques <bastiaan@bjacques.org>
6870 * backend/render_handler_cairo.cpp: New Cairo implementation.
6871 Fixes all Cairo bugs currently in Savannah, but adds a set of
6872 new bugs. The new renderer offers significantly better
6873 performance and better rendering quality. This implementation
6874 does not rely on Gnash's own triangulation.
6875 * backend/render_handler_cairo.h: Renamed set_handle to
6876 set_context, which is more descriptive.
6877 * gui/gtk_glue_cairo.{cpp,h}: Updated for set_context.
6879 2007-10-17 Sandro Santilli <strk@keybit.net>
6881 * server/: as_environment.{cpp,h}, sprite_instance.cpp:
6882 Drop useless as_environment::{get,set}_member.
6884 2007-10-17 Sandro Santilli <strk@keybit.net>
6886 * configure.ac: add --enable-cassert (build with NDEBUG defined by
6888 * server/dlist.{cpp,h}: add isSorted private method
6889 to slighly speed up invariant testing.
6890 * server/edit_text_character.{cpp,h}: Add support for
6891 the TextField.onChanged event.
6893 2007-10-17 Markus Gothe <nietzsche@lysator.liu.se>
6895 * server/asobj/NetStream.h: MIPSPro work-around.
6896 * configure: Always print BOOST_{CFLAGS, LIBS}
6897 * macros/boost.m4: Detect boost correctly by two steps. Added GXX.
6899 2007-10-16 Sandro Santilli <strk@keybit.net>
6901 * server/parser/edit_text_character_def.cpp (get_font): reduce
6902 debugging output for a common case.
6903 * server/character.h: indentation cleanups and get_visible/set_visible
6906 2007-10-15 Sandro Santilli <strk@keybit.net>
6908 * server/as_value.cpp (to_debug_string): tell apart dangling from
6911 2007-10-15 Martin Stransky <stransky at redhat dot com>
6913 * plugin/plugin.cpp: don't call NSAPI code after the fork.
6914 Patch from https://bugzilla.redhat.com/show_bug.cgi?id=281061.
6916 2007-10-15 Sandro Santilli <strk@keybit.net>
6918 * server/as_environment.{cpp,h}: have find_object_{dot,slash}syntax
6919 support a scope stack.
6920 * testsuite/actionscript.all/with.as: fix last failing test. Should be
6921 easy to add more failing (hint: get variable in one-before-last member
6922 of with stack scope).
6924 2007-10-15 Udo Giacomozzi <udo.gnu@nova-sys.net>
6926 * backend/render_handler_agg.cpp, backend/render_handler_agg.h, gui/fb.cpp,
6927 gui/fltk_glue_agg.cpp, gui/gtk_glue_agg.cpp, gui/kde_glue_agg.cpp,
6928 gui/riscos_glue_agg.cpp, gui/sdl_agg_glue.cpp: Don't let the renderer
6929 choose the rowstride (bytes per line) as this depends on the GUI
6930 and use the rowstride reported by the MIT-SHM extension instead of
6932 * backend/render_handler_agg.cpp: Code cleanup
6934 2007-10-14 Sandro Santilli <strk@keybit.net>
6936 * gui/fb.cpp: update use of agg_detect_pixel_format
6937 * server/as_environment.cpp: minor cleanups.
6939 2007-10-14 Sandro Santilli <strk@keybit.net>
6941 * backend/render_handler_agg.{cpp,h} (agg_detect_pixel_format):
6942 return by const char*, fixing a warning raised by gcc 4.2.1
6943 * gui/gtk_glue_agg.cpp: update use of agg_detect_pixel_format.
6945 2007-10-14 Sandro Santilli <strk@keybit.net>
6947 * utilities/processor.cpp: support fscommand:quit command.
6948 * testsuite/swfdec/PASSING: 39 successes found (used to fail just
6949 because we didn't support the fscommand:quit command.
6951 2007-10-14 Sandro Santilli <strk@keybit.net>
6953 * testsuite/check.h: force literal string to std::string conversion in
6954 check_equals and xcheck_equals (fixes compiler warnings from gcc >=
6956 * server/as_environment.cpp (get_variable_raw, set_variable_raw): don't
6957 explicitly look in locals for SWF6 and higher, as locals should already
6958 be in the scope chain; look in scope chain *before* locals in the
6959 SWF5- case (only 'with stack' in that case).
6960 * testsuite/actionscript.all/with.as: fixed a couple of tests about locals
6961 and 'with' stack seek order.
6963 2007-10-14 Sandro Santilli <strk@keybit.net>
6965 * server/as_environment.cpp (get_variable_raw): reduce calls to
6967 * testsuite/misc-ming.all/Makefile.am: don't build and run PlaceObject2Test
6968 if MING_SUPPORTS_REPLACE_TAG is not defined, don't try to run
6969 get_frame_number_testrunner when not building it.
6970 * testsuite/misc-ming.all/PlaceObject2Test.c: remove /* in comment warning.
6972 2007-10-13 Rob Savoye <rob@ripple.welcomehome.org>
6974 * macros/agg.m4, curl.m4, ffmpeg.m4, freetype.m4, glib.m4,
6975 gnashpkgtool.m4, gtk2.m4, gtkglext.m4, jpeg.m4, kde.m4, libXML.m4,
6976 lirc.m4, ming.m4, mysql.m4, opengl.m4, pango.m4, pthreads.m4,
6977 sdl.m4, x11.m4: Also test for /usr/lib64, so it doesn't sneak into
6978 our LDFLAGS. This will cause make distcheck to fail on a 64 bit machine.
6980 2007-10-13 Udo Giacomozzi <udo.gnu@nova-sys.net>
6982 * gui/fbsup.h: Make PS/2 mouse the default (instead of ETurboTouch)
6984 2007-10-12 Zou Lunkai <zoulunkai@gmail.com>
6986 * testsuite/misc-swfc.all/opcode_guard_test2.sc: test that both setTarget
6987 and setTargetExpression use the target string instead of pointer for
6988 searching the target.
6989 * testsuite/actionscript.all/with.as: test that target don't need to be
6990 stacked in nesting setTarget context.
6992 2007-10-11 Sandro Santilli <strk@keybit.net>
6994 * testsuite/actionscript.all/with.as: test that locals do NOT take
6995 precedence over 'with' stack.
6997 2007-10-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
6999 * server/asobj/Key.cpp: clean up.
7000 * testsuite/misc-ming.all/KeyIsDownTest.c: add test for Key.isDown().
7002 2007-10-10 Sandro Santilli <strk@keybit.net>
7004 * server/LoadVariablesThread.{cpp,h}: throw an exception
7005 if stream can't be fetched (NetworkException).
7006 * server/asobj/LoadVars.cpp: catch NetworkException while
7007 constructing LoadVariablesThread. Fixes assertion failure
7010 2007-10-10 Sandro Santilli <strk@keybit.net>
7012 * server/asobj/xmlsocket.cpp: don't use non-configured as_environment
7013 for user-defined event handlers invocation.
7015 2007-10-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7017 * server/asobj/Key.{h,cpp}: change is_key_down() to take SWF keycode
7018 and check the relevant bit in m_unreleased_keys (bit array).
7020 2007-10-10 Sandro Santilli <strk@keybit.net>
7022 * server/movie_root.cpp (notify_key_listeners): don't use a
7023 stack-allocated and non-configured as_environment for user-defined
7024 event handlers invocation.
7026 2007-10-10 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7028 * gui/gui.cpp: only handle GUI shortcuts on key down.
7029 * server/asobj/Key.cpp: rename get_last_key_pressed() to get_last_key().
7031 2007-10-10 Sandro Santilli <strk@keybit.net>
7033 * server/parser/action_buffer.cpp (process_decl_dict): allow
7034 overriding the constant pool. Fixes dict_override.swf
7035 * testsuite/misc-swfmill.all/: Makefile.am, dict_override.xml:
7036 New test for constant pool override (gnash fails, will fix next).
7038 2007-10-10 Zou Lunkai <zoulunkai@gmail.com>
7040 * testsuite/misc-mtasc.all/: Base1.as, Derived1.as, super_test1.as,
7041 Makefile.am: test for super, detected an unexpected 'ActionLimit hit'
7043 2007-10-10 Zou Lunkai <zoulunkai@gmail.com>
7045 * testsuite/misc-mtasc.all/function.as, Makefile.am: rename function.as to
7046 function_test.as, fix a name conflict in a case insensitive file system. There
7047 is a Function.as in mtasc/std.
7049 2007-10-10 Sandro Santilli <strk@keybit.net>
7051 * server/swf_function.cpp (call operator): pop call stack frame on
7052 exception. Fixes assertion failure on restart reported by bwy in
7054 * server/as_environment.h: don't use size() or length()
7055 when empty() is really meant (in some cases empty() is much
7058 2007-10-10 Chad Musick <chadmusick@msbx.net>
7060 * server/vm/SafeStack.h: Remove limit on size of grow()
7061 * server/vm/Machine.cpp: Name changed from server/vm/AbcHandlers.cpp,
7062 more work on making it work.
7063 * server/vm/Machine.h: More work on making it work.
7065 2007-10-09 Sandro Santilli <strk@keybit.net>
7067 * server/as_environment.cpp: don't use size() or length()
7068 when empty() is really meant (in some cases empty() is much
7070 * testsuite/misc-ming.all/Makefile.am: remove duplicate rule
7071 for PlaceObject2Test.swf (fixes make check).
7073 2007-10-09 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7075 * server/asobj/Key.{cpp,h}: rename m_last_key_pressed to
7076 m_last_key_event. Add SWF keycode, not gnash keycode to
7077 index of keys down. Fixes problems when releasing shift
7078 before a character key.
7080 2007-10-09 Chad Musick <chadmusick@msbx.net>
7082 * server/AS3_OPCODES: Remove file (information up-to-date elsewhere).
7084 2007-10-09 Zou Lunkai <zoulunkai@gmail.com>
7086 * testsuite/misc-ming.all/PlaceObject2Test.swf, Makefile.am:
7087 enable an old testcase, it wasn't used actually. Test DLIST tags
7088 with dynamic depth manipulation. All passed with cvs-head.
7090 2007-10-09 Sandro Santilli <strk@keybit.net>
7092 * server/vm/ActionExec.cpp (call operator): don't execute anything
7093 if scripts are disabled. Fixes bug #21295.
7095 2007-10-08 Udo Giacomozzi <udo.gnu@nova-sys.net>
7097 * libbase/tu_timer.cpp: Avoid range problems. Fixes bug #21289
7098 * gui/gui.cpp: fixed draw_poly() call when region debugging is active
7100 2007-10-08 Sandro Santilli <strk@keybit.net>
7102 * server/as_value.{cpp,h}: fully inlined destructor, since it has
7105 2007-10-08 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7107 * libbase/rc.{h,cpp}, testsuite/libbase/TCCXXRc.cpp
7108 libbase/curl_adapter.cpp: rename variable and function to _insecureSSL
7110 * gui/kde.cpp: complete keyboard handling from the GUI.
7111 * server/asobj/Key.cpp (set_key_up): key releases also update
7112 m_last_key_pressed, so that the last key released is not necessarily
7113 the same as the last key pressed.
7115 2007-10-08 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7117 * libmedia/AudioDecoderSimple.cpp: Fix stereo/mono resampling.
7118 * libmedia/sdl/AudioDecoderMad.cpp: Fix compilation and stereo/mono
7120 * libmedia/sdl/VideoDecoderFfmpeg.cpp: Free frame after use. Throw
7121 bad_alloc, if out of memory.
7122 * libmedia/sdl/sound_handler_sdl.cpp: Fix decoding multiple times until
7123 the required buffer is full.
7125 2007-10-08 Sandro Santilli <strk@keybit.net>
7127 * testsuite/misc-ming.all/loop_test9.c: add a test for RemoveObject
7128 having effect for out-of-static-zone depths (now the test would
7129 segfault with a gnash version prior the fix for bug #21281 - 0.8.1
7130 for instance). Head is fine.
7132 2007-10-08 Chad Musick <chadmusick@msbx.net>
7134 * server/vm/AbcHandlers.cpp: More work on the AS3 interpreter --
7135 function calls and such.
7136 * server/vm/Machine.h: Remove Stack (moved to SafeStack.h), remove
7137 CodeStream (moved to CodeStream.h), remove FunctionEntry (becomes
7138 State internal class).
7139 * server/vm/CodeStream.h: Add reInitialize method to allow empty
7141 * server/vm/SafeStack.h: Add method to reset stack to a certains state.
7143 2007-10-08 Sandro Santilli <strk@keybit.net>
7145 * testsuite/misc-ming.all/ming_utils.c: have totals() and friend also
7146 print a final line containing grand totals. This will be easier
7147 to use for consistency checking from the generic-testrunner.sh.
7148 * testsuite/misc-ming.all/: Makefile.am, loop_test9.c: test that
7149 a PlaceObject-placed instance in a depth higher then 0 (after
7150 depth-shift) doesn't get removed on jump-back. Verifies behaviour
7153 2007-10-07 Sandro Santilli <strk@keybit.net>
7155 * server/swf/RemoveObjectTag.cpp (loader): don't attempt to unregister
7156 a timeline depth if depth is out of the static zone. PlaceObject2
7157 does the same avoiding to register the depth in this case. Fixes bug
7159 * server/parser/movie_def_impl.cpp (dump_tag_bytes): output cleanup.
7161 2007-10-07 Chad Musick <chadmusick@msbx.net>
7163 * server/vm/SafeStack.h: New file. Complete definition of a stack
7164 which can be used for obtaining references valid for the life of
7165 the stack and has facilities for simulating multiple stacks
7166 in one stack. See the class for documentation.
7168 2007-10-07 Chad Musick <chadmusick@msbx.net>
7170 * server/vm/CodeStream.h: New file. Complete definition of a stream
7171 for safely reading code, with necessary reader functions for AS3.
7173 2007-10-06 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7175 * server/as_value.cpp (to_number): use boost::lexical_cast instead
7176 of strtod to avoid differences in decimal point between locales
7177 (not really verified with actionscript behaviour).
7179 2007-10-06 Sandro Santilli <strk@keybit.net>
7181 * libmedia/sdl/VideoDecoderFfmpeg.cpp (decode): check return from
7182 avcodec_alloc_frame.
7183 * libbase/curl_adapter.cpp (fill_cache): fix compiler warning
7186 2007-10-06 Sandro Santilli <strk@keybit.net>
7188 * server/as_object.{cpp,h}: add init_member and init_property
7189 based on string_table::key
7190 * server/asobj/AsBroadcaster.cpp (initialize): use string_table
7191 keys when already available.
7193 2007-10-06 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7195 * libmedia/sdl/AudioDecoderFfmpeg.cpp: Release allocate data on errors.
7196 * libmedia/sdl/sound_handler_sdl.cpp: Allocate active_sound as an object.
7198 2007-10-06 Sandro Santilli <strk@keybit.net>
7200 * server/sprite_instance.cpp (sprite_attach_movie): remove useless
7201 std::string construction.
7202 * server/parser/movie_def_impl.h: change ExportMap to use
7203 case-insensitive string comparison.
7204 * server/parser/movie_definition.h: update get_exported_resource
7205 documentation to mention string matching is always case-insensitive.
7206 * testsuite/swfdec/PASSING: export-case-# success.
7208 2007-10-06 Sandro Santilli <strk@keybit.net>
7210 * testsuite/actionscript.all/Number.as: test conversion of a string
7211 with a decimal point to a number (fails when locales have comma
7212 instead of dot as the decimal point). See bug #21168.
7214 2007-10-06 Sandro Santilli <strk@keybit.net>
7216 * server/asobj/string.{h,cpp} (init_string_instance): when in SWF6 fetch
7217 constructor from the global object, to use any overrided one
7218 (swfdec testsuite contains a test for this).
7219 * server/vm/ASHandlers.cpp (ActionGetMember): drop special handling
7220 for 'length' (it's incorrect and was marked with a FIXME).
7221 * testsuite/swfdec/PASSING: string-convert-{6,7} succeed now.
7223 2007-10-06 Sandro Santilli <strk@keybit.net>
7225 * server/asobj/string.cpp (string_index_of): only use second argument
7226 if it casts to positive integer.
7227 * testsuite/actionscript.all/String.as: more tests.
7229 2007-10-06 Sandro Santilli <strk@keybit.net>
7231 * server/as_function.cpp (function_call): handle the case in which
7232 first argument given to Function.call does not cast to an object.
7233 The handling is not correct, but at least prevents assertion
7234 failures and prints an ascoding error. Fixes bug #21236.
7235 * testsuite/actionscript.all/Function.as: add few more tests for
7236 Function.call(<not-an-object>).
7238 2007-10-05 Rob Savoye <rob@ripple.welcomehome.org>
7240 * macros/boost.m4: Adjust error messages when boost files aren't
7242 * configure.ac: Adjust error messages when boost files aren't
7245 2007-10-05 Sandro Santilli <strk@keybit.net>
7247 * testsuite/actionscript.all/String.as: couple more tests for
7248 String.indexOf (lots more needed!).
7249 * server/asobj/AsBroadcaster.{cpp,h} (initialize): query
7250 addListener and removeListener methods from the global
7251 AsBroadcaster, using any overridden member (shown
7252 to be needed by swfdec testsuite).
7253 * testsuite/actionscript.all/AsBroadcaster.as: the new tests
7254 are fixed, added a TODO for adding more.
7256 2007-10-05 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7258 * gui/gui.cpp: Handle key releases again.
7260 2007-10-05 Sandro Santilli <strk@keybit.net>
7262 * testsuite/actionscript.all/AsBroadcaster.as: add more tests,
7265 2007-10-05 Rob Savoye <rob@ripple.welcomehome.org>
7267 * configure.ac: Fix error messages for mising boost files.
7269 * macros/boost.m4: Check for a directory without "boost" as an
7270 additional sub directory.
7272 * macros/boost.m4: Make the --with-options work correctly. Recode
7273 how all the directories, headers, and libraries get found, or
7274 configure fails to find any dependant file.
7276 2007-10-06 Chad Musick <chadmusick@msbx.net>
7277 * server/vm/Machine.h: More comments about functions, some
7278 signature corrections.
7279 * server/vm/AbcHandlers.cpp: Definition of some of the necessary
7282 2007-10-06 Chad Musick <chadmusick@msbx.net>
7284 * server/vm/Machine.h: New File. First iteration (not documented,
7285 not compilable) of class definition for VM for ActionScript3
7287 * server/vm/AbcHandlers.cpp: More regularity, some small changes.
7289 2007-10-05 Udo Giacomozzi <udo.gnu@nova-sys.net>
7291 * server/sprite_instance.cpp: Allow attachMovie() to accept also
7292 button definitions, not just movie clips
7294 2007-10-05 Sandro Santilli <strk@keybit.net>
7296 * testsuite/misc-swfmill.all/: Makefile.am, jump_after_end.xml:
7297 Have the test end with an "END OF TEST" trace, and expect that.
7299 2007-10-05 Sandro Santilli <strk@keybit.net>
7301 * testsuite/generic-testrunner.sh: add support for consistency
7302 checking (-c and -C switches)
7303 * testsuite/misc-swfmill.all/Makefile.am: expect jump_after_end.swf
7304 to end with a PASSED trace (for now this will catch errors in
7305 jump after end bugs).
7307 2007-10-05 Sandro Santilli <strk@keybit.net>
7309 * testsuite/misc-swfmill.all/jump_after_end.xml: Made the
7310 self-contained (almost completely). The problem now is that
7311 if it fails it will NOT print nor FAILED nor PASSED so
7312 we'll need the test *runner* to implement some sort of
7313 consistency check to verify the end of test is reached.
7314 We should do this always, btw...
7316 2007-10-05 Sandro Santilli <strk@keybit.net>
7318 * testsuite/misc-swfmill.all/jump_after_end.xml:
7319 Fixed the XML to *really* do what I intended it to
7320 do. Still not self-contained though.
7322 2007-10-05 Sandro Santilli <strk@keybit.net>
7324 * testsuite/misc-swfmill.all/: Makefile.am, jump_after_end.xml:
7325 Test that it is completely fine to jump past the END opcode
7326 in an action buffer (thanks Chad). Note that the tests in
7327 misc-swfmill.all are not automated yet (need to find out how
7328 to make use of the Dejagnu.swf lib)
7330 2007-10-05 Sandro Santilli <strk@keybit.net>
7332 * server/movie_root.cpp: catch less ActionLimitException: in
7333 setMovieRoot and in advance (both can trigger immediate execution
7334 of actions). Basically I removed from setLevel as it can be called
7335 by a child of processAction thus resulting in a missing cleanup.
7337 2007-10-05 Sandro Santilli <strk@keybit.net>
7339 * server/movie_root.cpp: catch more ActionLimitException: in
7340 setLevel and in advance (both can trigger immediate execution
7343 2007-10-05 Sandro Santilli <strk@keybit.net>
7345 * server/vm/ASHandlers.cpp (ActionSetRegister, ActionPushData):
7346 Don't use global registers in a function2 context with local
7348 * testsuite/swfdec/PASSING: success for register-count.swf and
7349 definefunction2-registers-#.swf
7351 2007-10-05 Sandro Santilli <strk@keybit.net>
7353 * server/vm/ASHandlers.cpp (CommonGetUrl): case-insensitive
7354 'fscommand' matching.
7356 2007-10-05 Sandro Santilli <strk@keybit.net>
7358 * server/parser/action_buffer.{h,cpp}: add readFullTag method not
7359 bothering to check for an END opcode thus making read faster.
7360 * server/swf/DoActionTag.h (read): use action_buffer::readFullTag.
7362 2007-10-05 Sandro Santilli <strk@keybit.net>
7364 * server/parser/action_buffer.cpp (read): don't give up if an END
7365 opcode is not found. You can find real-world cases for a missing
7366 END in swfdec testsuite, tipically generated by swfmill.
7367 * testsuite/swfdec/PASSING: 2 more successes.
7369 2007-10-04 Aleksey Lim <alsroot@member.fsf.org>
7371 * libmedia/MediaParser.h: wrap avcodec.h include in extern "C"
7374 2007-10-04 Sandro Santilli <strk@keybit.net>
7376 * server/as_value.{cpp,h}: use a new SpriteProxy class for
7377 doing all the soft-reference things. This will now be a flavor
7378 of the boost::variant. Advantage of this is we won't keep alive
7379 destroyed sprites only because we need their original path for
7382 2007-10-04 Sandro Santilli <strk@keybit.net>
7384 * autogen.sh: reccommend installing libltdl3-dev when libtoolize
7387 2007-10-04 Sandro Santilli <strk@keybit.net>
7389 * server/as_value.cpp (to_sprite, to_debug_string): use isDestroyed()
7390 instead of isUnloaded() to trigger "dangliness" of a soft reference.
7391 * testsuite/actionscript.all/MovieClip.as: the two new tests about
7392 soft references succeed now.
7394 2007-10-04 Sandro Santilli <strk@keybit.net>
7396 * server/dlist.{cpp,h}: remove unused functions, call destroy()
7397 on characters whos unload() returned false.
7398 * server/sprite_instance.cpp (dtor): remove useless call to
7399 DisplayList::clear()
7401 2007-10-04 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7403 * libbase/BitsReader.h: Added doc.
7404 * libmedia/AudioDecoderSimple.cpp: Another impovement of ADPCM decoding.
7406 2007-10-04 Chad Musick <chadmusick@msbx.net>
7408 * server/vm/AbcHandlers.cpp: More work on the main interpreter for AS3.
7410 2007-10-04 Sandro Santilli <strk@keybit.net>
7412 * server/character.{cpp,h}: add destroy() and isDestroyed()
7413 members. Will surely help with soft references and hopefully
7414 with opcode guarding too.
7415 * server/movie_root.cpp (cleanupDisplayList): call destroy()
7416 on unloaded but still not destroyed characters.
7417 * server/sprite_instance.{cpp,h}: override destroy() to remove
7420 2007-10-04 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7422 * libmedia/gst/gstappsink.{c,h}: Updated to match latest gstreamer cvs.
7423 * libmedia/*: Fix cvs is tags.
7425 2007-10-04 Sandro Santilli <strk@keybit.net>
7427 * testsuite/actionscript.all/MovieClip.as: add test showing
7428 that it's NOT *unload* of sprite triggering soft-references
7429 rebinding but rather *destroy* of them !
7431 2007-10-03 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7433 * libbase/Makefile.am: Added BitsReader.{h,cpp}
7434 * server/Makefile.am: Removed BitsReader.{h,cpp}
7435 * server/BitsReader.{h,cpp}: moved to libbase, and added got_bits().
7436 * libmedia/AudioDecoderSimple.cpp: Use BitsReader in libbase.
7437 Fixed (at least some) adpcm decoding bugs (bug #21177).
7438 * libmedia/sdl/AudioDecoderFfmpeg.cpp: fix cvs id tag.
7439 * libmedia/sdl/sound_handler_sdl.cpp: Only stop playback of sound if
7440 completely done. If nothing has been decoded assume nothing can be
7441 decoded, fixes bug #21219.
7442 * libmedia/sdl/sound_handler_sdl.h: Only delete decoder if it exists.
7444 2007-10-03 Sandro Santilli <strk@keybit.net>
7446 * server/as_value.{cpp,h}: use boost::variant instead of the union.
7447 Idea taken from patch #6067. No clever templates used, this is just
7448 the basic thing, can be improved in the future. Main reason to have
7449 done so is for being able to drop the reference to the original
7450 sprite for soft references (still not implemented but now possible).
7451 * libbase/smart_ptr.h: define intrusive_ptr_{add,drop}_ref for
7452 as_object needed for the "clever" boost::get visitor of
7455 2007-10-03 Sandro Santilli <strk@keybit.net>
7457 * cygnal/ACT/Makefile.am: don't list subdirs for which no
7458 Makefile.am is present. TODO: add a Makefile.am there !
7460 2007-10-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7462 * libbase/rc.{cpp,h}: make expandPath void and other small cleanups.
7464 2007-10-04 Chad Musick <chadmusick@msbx.net>
7466 * server/vm/AbcHandlers.cpp: New file. This will become the
7467 interpreter for AS3, and I hope to convert the ASHandlers class
7468 to this style as well, as it offers some significant clarity
7469 and performance gainst. At the moment, this code won't
7470 compile, isn't complete, and isn't even consistent.
7472 2007-10-03 Sandro Santilli <strk@keybit.net>
7474 * server/as_value.cpp (to_bool*): assert that OBJECT and FUNCTION
7475 values are never null.
7477 2007-10-03 Sandro Santilli <strk@keybit.net>
7479 * server/as_value.{cpp,h}: stop using m_string_value as a cache
7480 for convertion to string (propedeutic for storing the string
7481 into the union). clean m_string_value inside drop_refs
7482 (should reduce memory use).
7484 2007-10-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7486 * libbase/rc.{cpp,h}: reference instead of copy for expandpath
7487 * testsuite/libbase/TCXXRc.cpp, gnashrc.in: tests for insecureSSL
7488 * docs: add insecureSSL and minor cleanups to gnashrc.xml
7489 * gui/gnash.cpp, gui/gtk.cpp: comment out broken / disabled movie
7490 controls until they work.
7492 2007-10-03 Sandro Santilli <strk@keybit.net>
7494 * server/as_value.{cpp,h}: changed to_string and to_string_versioned
7495 methods to return by value rather then by const ref. Next step will
7496 be only using a string member when needed.
7498 2007-10-03 Sandro Santilli <strk@keybit.net>
7500 * testsuite/actionscript.all/MovieClip.as: Test effects of unload
7501 on clip bounds (confirms we should clean the drawable on unload).
7503 2007-10-03 Sandro Santilli <strk@keybit.net>
7505 * testsuite/actionscript.all/MovieClip.as:
7506 more extensive tests for soft references, confirming current
7507 gnash behaviour being unbreaked.
7509 2007-10-03 Sandro Santilli <strk@keybit.net>
7511 * testsuite/actionscript.all/ops.as: more tests for ActionShiftRight
7512 * server/vm/ASHandlers.cpp (ActionShiftRight): fix new testcases
7513 (and the current 3dtris.swf problem with it - see bug #21074).
7515 2007-10-03 Chad Musick <chadmusick@msbx.net>
7517 * server/vm/ASHandlers.cpp: Drop top of stack in ActionStringCompare,
7518 since there are two stack elements on entry and (should be) one
7521 2007-10-03 Sandro Santilli <strk@keybit.net>
7523 * server/sprite_instance.cpp (unload): clear the drawable when unload
7524 (won't be needed anymore).
7525 * server/sprite_instance.cpp: add support for debugging the drawing
7528 2007-10-03 Sandro Santilli <strk@keybit.net>
7530 * server/parser/shape_character_def.{cpp,h}: add numEdges and numPaths
7533 2007-10-02 Sandro Santilli <strk@keybit.net>
7535 * gui/gui.cpp (restart): call movie_root::reset so scripts are enabled
7536 again; (getMovieInfo): add info about wheter scripts are disabled.
7537 * server/movie_root.{cpp,h}: add disableScripts and scriptsDisabled
7538 methods; don't process queued actions if scripts are disabled,
7539 disable scripts if ActionLimitException is thrown by execution of
7541 * server/vm/ActionExec.{cpp,h}: re-throw ActionLimitException so all
7542 elements of the call stack have a chance to cleanup and the exception
7543 is eventually cought by the movie_root.
7544 * testsuite/swfdec/PASSING: success with script abortion tests.
7546 2007-10-02 Sandro Santilli <strk@keybit.net>
7548 * server/asobj/xml.{cpp,h}: get environment passed for events
7549 invocation purposes.
7550 * testsuite/actionscript.all/: XML.as, XMLNode.as: use check.as
7551 instead of dejagnu.as, add check_totals.
7552 * server/array.cpp (as_value_custom call operator): use the
7553 environment passed to us, not a newly created one.
7555 2007-10-02 Sandro Santilli <strk@keybit.net>
7557 * server/as_object.cpp (callMethod): fix order in which
7558 args are pushed on the stack [the version taking 2 args].
7559 * server/asobj/MovieClipLoader.cpp: initialize MovieClipLoader
7560 instances as AsBroadcasters, call broadcastMessage for broadcasting,
7561 use the environment used in the loadClip call.
7562 * testsuite/actionscript.all/MovieClipLoader.as: add test for
7563 existence of the broadcastMessage function.
7565 2007-10-02 Sandro Santilli <strk@keybit.net>
7567 * server/movie_root.cpp (testInvariant): non-emptiness of _movies
7568 container is NOT an invariant...
7570 2007-10-01 Sandro Santilli <strk@keybit.net>
7572 * server/movie_root.{cpp,h}: remove the error-prone ::restart method.
7573 * testsuite/MovieTester.{cpp,h}: implement proper restart method.
7575 2007-10-01 Sandro Santilli <strk@keybit.net>
7577 * server/movie_root.{cpp,h}: add a clear() method for clearing
7578 everything managed by the movie_root/stage. Intended to be called
7579 right before a brand new setRootMovie call (for restart).
7580 * gui/gui.cpp (menu_restart): get a real restart, including flash
7581 variables settings and sure about the real initial movie_definition
7582 that started everything.
7584 2007-10-01 Sandro Santilli <strk@keybit.net>
7586 * gui/gui.{cpp,h}: add movie_definition and movie_root members,
7587 add _started member to postpone kick-start (movie_root::setRootMovie
7588 call) in case we started in "stop" mode [ fixed bug #21212 ].
7589 Avoid notifying mouse and key events to the core lib if in stop
7591 * gui/Player.{cpp,h}: update use of the Gui class.
7593 2007-10-01 Sandro Santilli <strk@keybit.net>
7595 * server/vm/ActionExec.cpp: cleanups in opcode guard code.
7597 2007-10-01 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7599 * libbase/curl_adapter.cpp: use curl_multi_info_read to get
7600 better information about stream connections. Pass on CURL errors
7601 if transaction fails (e.g. for self-certified SSL sites like Savannah).
7602 Log HTTP code of all transactions. 400 and above logged as error.
7604 2007-09-30 Sandro Santilli <strk@keybit.net>
7606 * libbase/Makefile.am, libmedia/Makefile.am: remove no-dependencies
7607 option. The option is still in libltdl/Makefile.am, dunno if it
7608 makes sense there either.
7610 2007-09-30 Sandro Santilli <strk@keybit.net>
7612 * testsuite/misc-ming.all/: Makefile.am,
7613 action_execution_order_test8.c: build the test in SWF5 and SWF6
7614 version, to verify opcode guard being is not dependent on version
7615 (well, at least not on those two versions, SWF5 including
7618 2007-09-30 Sandro Santilli <strk@keybit.net>
7620 * testsuite/misc-swfc.all/opcode_guard_test2.sc: test that unloaded
7621 but still not removed current target is still used for finding
7623 * testsuite/misc-swfc.all/Dejagnu.sc (xtotals): call xpass on
7626 2007-09-30 Sandro Santilli <strk@keybit.net>
7628 * libmedia/: MediaParser.h, VideoDecoder.h, AudoDecoder.h:
7629 virtual classes need virtual destructors, or destructors of
7630 subclasses will not be invoked be deleting instances by
7631 base class pointer !
7633 2007-09-30 Sandro Santilli <strk@keybit.net>
7635 * testsuite/misc-ming.all/opcode_guard_test.c: add xtotals() call.
7636 * testsuite/actionscript.all/dejagnu_so_init.as: set and invoke
7637 utility functions from/to _root. Fixes some scope chain problems
7638 we have in Gnash, better tested in a more focused testcase.
7639 * testsuite/actionscript.all/with.as: total runs check succeed
7640 with the change above.
7642 2007-09-30 Sandro Santilli <strk@keybit.net>
7644 * testsuite/actionscript.all/check.as: rename totals_check,
7645 xtotals_check to check_totals() and xcheck_totals (easier
7646 to grep for 'xcheck').
7647 * testsuite/actionscript.all/with.as: update calls to check_totals()
7649 * testsuite/misc-ming.all/ming_utils.c (Dejagnu.xtotals): call xpass
7650 un unexpectedd success.
7652 2007-09-30 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7654 * libbase/curl_adapter.cpp: allow, with security warning, override
7655 of curl's SSL certificate verification when requested in gnashrc.
7656 Equivalent to curl --insecure.
7657 * libbase/rc.{cpp,h}: 'set insecureSSL on' disables SSL certificate
7658 verification, thus allowing connections from the standalone player
7659 to https:// sites when the certificate is invalid or untrusted.
7661 2007-09-30 Sandro Santilli <strk@keybit.net>
7663 * server/environment.{h, cpp}: get_variable_raw() set 'this' to the orignial target
7664 instead of the current one.
7665 * server/vm/ActionExec.{h, cpp}: getThisPointer() returns the original target for
7667 * testsuite/actionsrcipt.all/with.as: xchecks to checks(fix 'this' context)
7669 2007-09-30 Zou Lunkai <zoulunkai@gmail.com>
7671 * testsuite/misc-swfc.all/movieclip_destruction_test3.sc: '_root' is always
7672 defined as tests shows.
7674 2007-09-30 Markus Gothe <nietzsche@lysator.liu.se>
7676 * libbase/tu_file.cpp: __SGI_LIBC_USING_FROM_STD(va_list).
7677 * libbase/Makefile.am: Don't include OPENGL_INCL, it might direct you
7678 /usr/include on some systems and it doesn't seem necessary...
7679 * libmedia/Makefile.am: Added libltdl-stuff from libbase/Makefile.am.
7681 2007-09-29 Sandro Santilli <strk@keybit.net>
7683 * testsuite/actionscript.all/: check.as, with.as: use totals_check
7684 and xtotals_check for macros, to avoid confusions.
7685 Will come back on this on monday...
7687 2007-09-29 Sandro Santilli <strk@keybit.net>
7689 * testsuite/actionscript.all/: AsBroadcaster.as, Boolean.as,
7690 Camera.as, Color.as, ContextMenu.as, CustomActions.as, Date.as,
7691 Error.as, Function.as, Global.as, Inheritance.as, Key.as,
7692 LoadVars.as, LocalConnection.as, Math.as, Microphone.as, Mouse.as,
7693 MovieClip.as, MovieClipLoader.as, NetConnection.as, NetStream.as,
7694 Number.as, Object.as, Selection.as, SharedObject.as, Stage.as,
7695 String.as, System.as, TextField.as, TextSnapshot.as, Video.as,
7696 XML.as, XMLNode.as, XMLSocket.as, array.as, case.as,
7697 delete.as, enumerate.as, getvariable.as, ops.as, rtmp.as,
7698 swap.as, targetPath.as, toString_valueOf.as:
7699 Add a totals() call.
7700 * testsuite/actionscript.all/check.as: add totals and xtotals macros.
7701 * testsuite/actionscript.all/with.as: add totals(x) and xtotal(x)
7703 * testsuite/actionscript.all/dejagnu_so_fini.as: remove the totals()
7706 2007-09-29 Sandro Santilli <strk@keybit.net>
7708 * testsuite/misc-ming.all/ming_utils.c (Dejagnu class):
7709 add totals(n, msg) and xtotals(n, msg) to check number
7712 2007-09-29 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7714 * docs: update Mozilla plugin install information to reflect current
7715 state. Task #7340 contains ideas for improving installation.
7717 2007-09-29 Chad Musick <chadmusick@msbx.net>
7719 * New: server/asClass.h,.cpp: Several different classes which work
7720 together to construct a type library for ActionScript 3. Work is
7721 in progress to make this glean the same information from the current
7722 ActionScript 2 information (through the Global object, as well
7723 as hand coding) so that the 'implements' op can be written and so
7724 that various AS2 things will work better. This is not yet complete.
7725 Because this code is in flux (though currently not broken), it is
7726 not yet extensively commented.
7727 * server/Makefile.am: Add new files
7728 * server/namedStrings.h,.cpp: New strings for the AS3 namespaces.
7729 * server/parser/Namespace.h: Add resource marking -- this file is
7730 going to be obsolete as soon as dependencies are verified.
7731 * server/parser/abc_block.h,.cpp: Update to be more modular, and to
7732 build a type library from AS3 tag.
7733 * server/vm/VM.cpp: Change to registration method for new types.
7734 * New: Various .cvsignore files
7736 2007-09-29 Sandro Santilli <strk@keybit.net>
7738 * testsuite/misc-swfc.all/: Dejagnu.sc, check.sc,
7739 opcode_guard_test2.sc: add and use xtotals.
7740 * testsuite/actionscript.all/toString_valueOf.as: more tests for
7741 TextField, toString and comparison..
7743 2007-09-29 Zou Lunkai <zoulunkai@gmail.com>
7745 * testsuite/actionscript.all/with.as: more tests for setTarget and found
7746 the Dejagnu clip functions might be out of scope chain, and explicitly
7747 targeting also not work.
7748 * testsuite/misc-swfc.all/opcode_guard_test2.sc, Makefile.am : test opcode
7749 guard with setTarget. seems too much actions get discarded than expected.
7751 2007-09-28 Sandro Santilli <strk@keybit.net>
7753 * libbase/rc.cpp: use fprintf rather then log_XXX during parsing.
7754 * testsuite/actionscript.all/toString_valueOf.as: more tests,
7755 check->check_equals.
7757 2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7759 * libbase/rc.{h,cpp}: move list parsing into a function; enable
7760 'set <list> off' for disabling previously parsed lists. Add
7761 error message when colons found in a list.
7762 * testsuite/libbase/TCXXRc.cpp, gnashrc-local.in: add test for
7764 * docs: update user manual.
7766 2007-09-28 Bernhard Rosenkraenzer <bero@arklinux.org>
7768 * configure.ac: rework SIZET_FMT detection to stop at first
7769 success. See bug #21182.
7771 2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7773 * libmedia/Makefile.am: Compile gstgnashsrc.{c,h} when gstreamer
7774 is the mediahandler.
7776 2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7778 * libmedia/AudioDecoder.h, libmedia/AudioDecoderNellymoser.{cpp,h},
7779 libmedia/AudioDecoderSimple.h, libmedia/MediaBuffer.h,
7780 libmedia/MediaDecoder.h, libmedia/MediaParser.h libmedia/VideoDecoder.h,
7781 libmedia/gst/VideoDecoderGst.h, libmedia/gst/gstappbuffer.{c,h},
7782 libmedia/gst/gstappsink.{c,h}, libmedia/gst/gstappsrc.{c,h},
7783 libmedia/gst/sound_handler_gst.h, libmedia/sdl/AudioDecoderFfmpeg.{cpp,h},
7784 libmedia/sdl/AudioDecoderMad.{h,cpp}, libmedia/sdl/MediaDecoderSdl.{h,cpp},
7785 libmedia/sdl/MediaParserFfmpeg.{h,cpp}, libmedia/sdl/sound_handler_sdl.h,
7786 libmedia/sdl/VideoDecoderFfmpeg.h: Update docs.
7787 * libmedia/sdl/VideoDecoderFfmpeg.cpp: Fix memleak. Fixes bug #21180.
7788 * libmedia/sdl/sound_handler_sdl.cpp: Use the internal ADPCM decoder.
7790 2007-09-28 Sandro Santilli <strk@keybit.net>
7792 * server/as_function.{cpp,h}: Add a constructor
7793 taking no args to use when a default prototype (iface)
7794 is wanted. The other constructor, taking an interface
7795 will be used when willing to control wheter or not a
7796 prototype should be used (TextField don't have one in SWF5
7798 * server/builtin_function.h: Same as with as_function, have
7799 a constructor taking on interface for a default one, use
7800 a NULL interface as meaning we don't want to expose a
7802 * server/edit_text_character.cpp: don't set a prototype for TextField
7803 class in SWF5, make TextField instances of object when TextField
7805 * testsuite/actionscript.all/toString_valueOf.as: one more success.
7808 2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7810 * configure.ac, testsuite/libbase/TCXXRc.cpp, gnashrc-local.in: add
7811 second rc file and test for append blacklist.
7812 * docs: update user manual with black- and whitelist information.
7814 2007-09-28 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7816 * libbase/rc.cpp: for whitelists and blacklists, 'set' overrides
7817 lists from previous files, 'append' adds to previous files.
7818 * testsuite/libbase/gnashrc.in: update tests, replace colons (old
7819 behaviour) with spaces (new behaviour) in lists. Please update
7820 your own lists, as old behaviour must eventually disappear.
7822 2007-09-28 Sandro Santilli <strk@keybit.net>
7824 * testsuite/actionscript.all/toString_valueOf.as: few more tests
7825 for TextField.toString.
7827 2007-09-28 Rob Savoye <rob@ripple.welcomehome.org>
7829 * gui/gtk.cpp: Add support for LIRC, if it's running. Add event
7830 handler for LIRC messages.
7832 2007-09-28 Rob Savoye <rob@ripple.welcomehome.org>
7834 * extensions/Makefile.am: Add dbus to DIST_SUBDIRS.
7836 * libbase/extension.cpp: Initialize the entry first so the loop
7838 * extensions/dbus_ext.h, dbus_ext.cpp: Minimal code stubs for a
7839 soon to be Dbus extension.
7840 * configure.ac: Add extensions/dbus. Drop calling
7841 GNASH_PATH_LIRC, as Gnash has it's own LIRC client code, and
7842 doesn't use the lirc_client API anymore.
7843 * macros/dbus.m4: New macro for Dbus support.
7844 * extensions/Makefile.am: Build dbus extension if requested.
7846 2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7848 * libbase/Makefile.am, libmedia/sdl/VideoDecoderFfmpeg.h,
7849 server/asobj/NetStreamFfmpeg.cpp: Fix building with libmedia.
7850 * libmedia/gst/VideoDecoderGst.{cpp,h}: Small comment update.
7852 2007-09-28 Tomas Groth Christensen <tomasgroth@yahoo.dk>
7854 * libmedia/, libmedia/sdl/, libmedia/gst/,
7855 (in libmedia:) AudioDecoder.h, AudioDecoderSimple.{h,cpp}, Makefile.am,
7856 AudioDecoderNellymoser.{h,cpp}, FLVParser.{h,cpp}, MediaDecoder.h,
7857 MediaParser.h, SoundInfo.h, MediaBuffer.h, VideoDecoder.h, sound_handler.h,
7858 (in libmedia/sdl:) AudioDecoderFfmpeg.{h,cpp}, AudioDecoderMad.{h,cpp},
7859 MediaDecoderSdl.{h,cpp}, MediaParserFfmpeg.{cpp,h}, VideoDecoderFfmpeg.{h,cpp},
7860 sound_handler_sdl.{h,cpp},
7861 (in libmedia/gst:) VideoDecoderGst.{h,cpp}, sound_handler_gst.{h,cpp},
7862 gstgnashsrc.{h.c}, gstappbuffer.{c,h}, gstappsink.{c,h}, gstappsrc.{c,h}:
7863 Files added for the new libmedia (finally!!). Some og theese files are moved
7864 from the backend/ and libbase/ folders (see below). Not all files are yet in use.
7865 * backend/sound_handler*, libbase/embedVideoDecoder*: Moved to libmedia.
7866 * Makefile.am, configure.ac, backend/Makefile.am, gui/Makefile.am,
7867 server/Makefile.am, server/asobj/Makefile.am, server/parser/Makefile.am,
7868 server/vm/Makefile.am, testsuite/Makefile.am, testsuite/misc-ming.all/Makefile.am,
7869 testsuite/movies.all/Makefile.am, testsuite/samples/Makefile.am,
7870 utilities/Makefile.am: Added the new libmedia to the build system.
7871 * libbase/FLVParser.h: Moved some declerations inside the class to avoid
7872 conflicts with MediaParser.h.
7873 * server/video_stream_instance.{cpp,h}, server/parser/video_stream_def.{cpp,h}:
7874 Use VideoDecoder instead of embedVideoDecoder.
7875 * server/swf/tag_loaders.cpp: Don't decode and resample the ADPCM and raw audio
7876 before passing to the soundhandler.
7877 Read more about libmedia here: http://wiki.gnashdev.org/wiki/index.php/Main_Page
7879 2007-09-28 Sandro Santilli <strk@keybit.net>
7881 * server/character.{cpp,h}: drop the get_text_value override here.
7882 * testsuite/actionscript.all/: toString_valueOf.as, MovieClip.as:
7885 2007-09-28 Sandro Santilli <strk@keybit.net>
7887 * testsuite/actionscript.all/toString_valueOf.as: more
7888 xcheck => xcheck_equals (easier to tell what's going on).
7890 2007-09-28 Sandro Santilli <strk@keybit.net>
7892 * server/as_object.h: add useCustomToString method to handle corner
7893 cases for which an ActionScript class doesn't want to use toString
7894 methods, when available, for converting to a string.
7895 * server/as_value.cpp (to_string): check with useCustomToString if
7896 for an object value we should or not call the ActionScript toString
7898 * server/asobj/string.cpp: override useCustomToString to return false
7899 and act as dumb and complex as the proprietary player (urgh)
7900 * testsuite/actionscript.all/toString_valueOf.as: two tests fixed.
7901 * testsuite/misc-ming.all/get_frame_number_test.c: one test fixed.
7902 * testsuite/swfdec/PASSING: three tests fixed.
7904 2007-09-27 Sandro Santilli <strk@keybit.net>
7906 * testsuite/actionscript.all/Global.as: test that parseInt() would
7907 call a custom toString() function against first parameter, if an
7910 2007-09-27 Bastiaan Jacques <bastiaan@bjacques.org>
7912 * gui/gtk{.cpp,sup.h}: Introduce addFDListener, which will make the
7913 GDK event loop poll the specified file descriptor and execute the
7914 specified callback if data is to be read from the file desciptor.
7916 2007-09-27 Sandro Santilli <strk@keybit.net>
7918 * server/as_object.cpp (setPropFlags): properly convert the properties
7919 to lowercase for SWF < 7.
7920 * testsuite/actionscript.all/String.as: successes in unprotecting
7921 {String,Object}.prototype.toString from deletion.
7923 2007-09-27 Sandro Santilli <strk@keybit.net>
7925 * testsuite/actionscript.all/String.as: tests for toString and it's
7926 deletion/unprotection from deletion (succeeds from SWF7 and higher,
7929 2007-09-27 Sandro Santilli <strk@keybit.net>
7931 * testsuite/actionscript.all/Global.as: add test for
7932 parseInt(<stringObject>).
7933 * server/asobj/Global.cpp (as_global_parseint): fix
7934 the parseInt(<stringObject>) case
7935 * testsuite/actionscript.all/toString_valueOf.as: xcheck =>
7938 2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7940 * gui/gnash.cpp: remove ESC = Quit from gnash --help output. It's not true
7941 and would potentially interfere with movie key events if it were. Ctrl-B
7942 commented out, because it also doesn't do anything.
7943 * gui/gtk.cpp: code cleanups, internationalization.
7945 2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7947 * docs/C/usage.xml, gui/gnash.cpp: add/update Ctrl-L
7948 * gui/gui.cpp: make keyboard shortcuts work for both upper and lower
7949 case. Correct step back ('[') and forward (']'), which are documented to
7950 need Ctrl and were the wrong way round. Function menu_step_forward
7951 is correctly called, but apparently doesn't work.
7953 2007-09-27 Sandro Santilli <strk@keybit.net>
7955 * testsuite/MovieTester.{cpp,h}: add restart() method.
7956 * testsuite/misc-ming.all/simple_loop_testrunner.cpp: fix expected
7957 invalidated bounds: we expect it to be the WORLD range on start
7958 and restart. Test ::restart itself.
7960 2007-09-27 Sandro Santilli <strk@keybit.net>
7962 * server/movie_root.{cpp,h}: add the concept of an 'invalidated'
7963 stage/movie_root. The Stage is only invalidated when the background
7964 color changes, dunno if it should also be invalidated by changes
7965 in the _levels.. maybe I'm using a confusing terminology here...
7966 Anyway this fixes bug #21169 and probably allow for cleanups
7967 in the gui code, where some paranoia is used to tell the first
7968 ::display call apart from subsequent, exactly for the invalidated
7969 bounds on startup problem.
7971 2007-09-27 Sandro Santilli <strk@keybit.net>
7973 * server/movie_root.cpp (restart): rework restart mechanism
7974 by actually re-instantiating the root from it's definition.
7976 2007-09-27 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
7978 * server/movie_root.cpp: move level0->restart()
7979 to avoid assertion failure.
7981 2007-09-27 Sandro Santilli <strk@keybit.net>
7983 * server/vm/ActionExec.cpp (call operator): re-enable
7984 opcode-guard but guard current target, not original
7985 one. Keeps feed.swf and curveball.swf fixed and also
7986 fixes the tests in our testsuite that where expected
7987 to fail since disabling the opcode guard.
7988 * testsuite/misc-ming.all/action_execution_order_test8.c,
7989 testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
7990 testsuite/misc-swfc.all/movieclip_destruction_test3.sc:
7991 success in the opcode-guard tests.
7993 2007-09-27 Sandro Santilli <strk@keybit.net>
7995 * server/sprite_instance.cpp (get_member): make "_global"
7996 a property (althought non-proper) of MovieClip. Fixes failures
7999 2007-09-27 Zou Lunkai <zoulunkai@gmail.com>
8001 * testsuite/actionscript.all/Movieclip.as, XML.as: fix a few unstable checks.
8002 and a few more tests.
8004 2007-09-27 Sandro Santilli <strk@keybit.net>
8006 * server/parser/action_buffer.cpp (disasm_instruction): neater output.
8007 * server/vm/ActionExec.cpp: tweak action verbosity output.
8009 2007-09-27 Sandro Santilli <strk@keybit.net>
8011 * server/vm/ActionExec.{cpp,h}: add dumpActions() debugging function
8012 useful to tell which opcode are discarded due to opcode-guard.
8013 (change #if 0 to #if 1 in the opcode-guard code to see).
8014 For the curveball.swf case, the unloading opcode is a
8015 GotoLabel("Serve"), followed by a Play and a SetTarget which are
8016 discarded when opcode-guard is in effect.
8018 2007-09-27 Zou Lunkai <zoulunkai@gmail.com>
8020 * testsuite/misc-ming.all/opcode_guard_test.c, Makefile.am: new testcase
8022 * testsuite/misc-swfc.all/edittext_test1.sc: more tests, passed.
8024 2007-09-26 Sandro Santilli <strk@keybit.net>
8026 * server/sprite_instance.cpp (get_member): forget that
8027 _root as undefined when unloaded thing. Broke other
8028 tests in the testsuite.
8029 * testsuite/misc-ming.all/action_execution_order_test8.c,
8030 testsuite/misc-swfc.all/movieclip_destruction_test1.sc,
8031 testsuite/misc-swfc.all/movieclip_destruction_test3.sc:
8032 Expect the 3 failures introduced by removal of opcode-level
8033 unloaded guard. We know that 2 real-world movies are fixed
8034 by removing that opcode-level guard, so we likely need
8035 more testing of this thing.
8037 2007-09-26 Sandro Santilli <strk@keybit.net>
8039 * testsuite/misc-swfc.all/: action_execution_order_test10.sc,
8040 action_execution_order_test12.sc, edittext_test1.sc,
8041 movieclip_destruction_test2.sc, movieclip_destruction_test3.sc,
8042 movieclip_destruction_test4.sc, soft_reference_test1.sc:
8043 Add expected number of tests run in the totals() call.
8045 2007-09-26 Sandro Santilli <strk@keybit.net>
8047 * server/as_environment.cpp (get_variable_raw): don't handle _root and
8048 _levelX in any special way, they are just sprite members !
8049 * server/sprite_instance.cpp (get_member): _root doesn't exist if
8051 * server/vm/ActionExec.cpp (call operator): drop opcode-level
8052 unloaded guard. Fixes bugs #21069 (feed.swf) and #20996
8053 (curveball.swf) w/out reopening #20974 (sonic.swf).
8054 Changes in as_environment.cpp and sprite_instance.cpp above
8055 do the rest for misc-ming and misc-swfc tests..
8057 2007-09-26 Sandro Santilli <strk@keybit.net>
8059 * server/parser/morph2_character_def.cpp (read):
8060 Don't print malformed swf errors if number of paths in defining
8061 shapes don't match: only edges matter.
8062 * gui/gtk.cpp (gdk_to_gnash_key): GDK_ooblique => GDK_oslash
8063 (gtk-2.0 in debian stable doesn't define the former).
8064 * server/: BevelFilter.h, BlurFilter.h, ConvolutionFilter.h,
8065 DropShadowFilter.h, GlowFilter.h, GradientBevelFilter.h,
8066 GradientGlowFilter.h: include <boost/cstdint.hpp> for XintXX_t.
8068 2007-09-26 Sandro Santilli <strk@keybit.net>
8070 * server/swf/tag_loaders.cpp (define_sound_loader): don't delete
8071 the sound data, ownership was transferred to the sound hanlder.
8073 2007-09-26 Sandro Santilli <strk@keybit.net>
8075 * server/as_value.cpp (equals): in SWF5, functions are
8076 considered null types for what concerns equality.
8077 * testsuite/actionscript.all/: Function.as,
8078 Inheritance.as, Object.as, toString_valueOf.as:
8081 2007-09-26 Sandro Santilli <strk@keybit.net>
8083 * server/as_environment.cpp (dump_global_registers): better
8084 presentation for global registers.
8086 2007-09-26 Sandro Santilli <strk@keybit.net>
8088 * server/PropertyList.{cpp,h}: add dump to map.
8089 * server/as_object.{cpp,h}: add dump_members to map.
8090 * server/as_environment.cpp: implement dumper for local
8093 2007-09-26 Sandro Santilli <strk@keybit.net>
8095 * server/vm/ActionExec.cpp (call operator): initialize maxBranchCount
8096 once at start of function; include PC of last jump in maxBranchCount
8099 2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8101 * gui/gtk.cpp: More moving menu items about.
8103 2007-09-26 Sandro Santilli <strk@keybit.net>
8105 * testsuite/actionscript.all/ops.as: add test for bitwise and between
8106 negative and positive number.
8108 2007-09-26 Sandro Santilli <strk@keybit.net>
8110 * backend/sound_handler.h (create_sound): document meaning of a NULL
8112 * backend/sound_handler_gst.cpp (create_sound): don't choke on NULL
8114 * server/swf/tag_loaders.cpp (sound_stream_head_loader): mek the call
8115 to create_sound() with NO data easier to read.
8117 2007-09-26 Sandro Santilli <strk@keybit.net>
8119 * backend/sound_handler.h: add assign() and constructor taking
8120 a memory buffer to the Buffer class.
8122 2007-09-26 Sandro Santilli <strk@keybit.net>
8124 * backend/sound_handler.h (Buffer::reserve): don't try to copy
8125 from the NULL pointer.
8127 2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8129 * gui/gtk.cpp,gtksup.h: add Refresh menu item, add gtk version checks
8130 for some stock menu items, reorder and add stock images to Movie
8132 * gui/gui{cpp,h}: Force immediate redraw instead of waiting for next
8135 2007-09-26 Sandro Santilli <strk@keybit.net>
8137 * backend/sound_handler.h: add more services to the
8138 Buffer class (sounds like reinventing the std::vector class
8141 2007-09-26 Sandro Santilli <strk@keybit.net>
8143 * backend/sound_handler.h: define a Buffer class
8144 to avoid duplicating code within the different
8145 versions of sound_data and active_sound.
8146 * backend/sound_handler_gst.{cpp,h}: Use a Buffer
8147 member in the sound_data.
8149 2007-09-26 Sandro Santilli <strk@keybit.net>
8151 * backend/sound_handler.h: document fill_stream_data return value.
8152 * backend/sound_handler_gst.{cpp,h}: Make buffer member of sound_data
8153 private, provide an ::append() function with optimized reallocs.
8154 Makes ninja parsing much faster. Same should be done for ffmpeg...
8155 See http://wiki.gnashdev.org/wiki/index.php/NinjaProfile.
8157 2007-09-26 Sandro Santilli <strk@keybit.net>
8159 * backend/: sound_handler.h, sound_handler_gst.{cpp,h},
8160 sound_handler_sdl.{cpp,h}: changed fill_stream_data
8161 interface to take ownership of the data array.
8162 Data is still copied, but can now be optimized locally
8163 in each sound hanlder.
8164 * server/swf/tag_loaders.cpp (sound_stream_block_loader):
8165 update use of fill_stream_data.
8167 2007-09-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8169 * gui/gtk.cpp: change Oslash to Ooblique - GDK_Oslash is evidently
8170 not defined in all gtk-2.0 versions.
8172 2007-09-26 Chad Musick <chadmusick@msbx.net>
8174 * server/vm/ActionExec.cpp: If the stack is empty, there was not
8175 an exception. Check for an empty stack first to avoid reading a
8178 2007-09-25 Sandro Santilli <strk@keybit.net>
8180 * gui/gui.{cpp,h}: port SKIP_RENDERING_IF_LATE to use WallClockTimer.
8182 2007-09-25 Sandro Santilli <strk@keybit.net>
8184 * server/parser/sprite_definition.h (ensure_frame_loaded): don't
8185 assume the target frame has always been loaded, as we might
8186 have loaded less frames then advertised in header.
8187 * server/parser/sprite_definition.cpp (read): don't change
8188 total frame count if zero. We wan't to respect it for _totalframes
8189 to return the correct value.
8190 * server/sprite_instance.{cpp,h}: don't assume m_current_frame is less
8191 then frame count or even loaded frames, as we might have loaded NO
8192 frames too; use a std::set rather then a vector of boolean to tell
8193 wheter init actions for a given frame have been executed; check
8194 frames loaded count when needed.
8195 * server/movie_instance.cpp (advance, stagePlacementCallback): drop
8196 the frames loaded count check, it's now in sprite_instance.
8198 2007-09-25 Sandro Santilli <strk@keybit.net>
8200 * doc/C/usermanual/usage/gnashrc.xml: document StreamsTimeout
8201 directive, remove duplicated line for StartStopped.
8202 * libbase/: Makefile.am, WallClockTimer.{h,cpp}:
8203 New class for wall-clock timing. Interface borrowed
8204 by boost::timer, but this one uses wall-clock and
8205 talks milliseconds instead of seconds.
8206 * libbase/rc.{cpp,h}: add support for streamsTimeout
8208 * testsuite/libbase/: TCXXRc.cpp, gnashrc.in: test
8209 streamsTimeout setting.
8210 * libbase/curl_adapter.cpp (fill_cache): implement
8213 2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8215 * server/gnash.h: fix typo in key::codeMap.
8217 2007-09-25 Sandro Santilli <strk@keybit.net>
8219 * server/edit_text_character.cpp (set_member): handle attempts
8220 to set _width and _height to non-finite or negative values.
8221 Fixes assertion failures in playing
8222 flvplayer-debug-lulutv-beta4.swf.
8224 2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8226 * gui/gtk.cpp: clean up properties dialogue.
8227 * gui/gui.{h,cpp}: add menu_refresh_view() and refresh_view() to gui
8228 with shortcut Ctrl-L. Now forces full redraw of next frame, but
8229 should in future force immediate redraw.
8230 * gui/gnash.cpp: add Ctrl-L to gnash -h.
8232 2007-09-25 Chad Musick <chadmusick@msbx.net>
8234 * macros/boost.m4: Look for multi_index directory in boost include
8235 directory. No library is needed, headers only.
8237 2007-09-25 Sandro Santilli <strk@keybit.net>
8239 * testsuite/misc-swfc.all/registerclass_test3.sc:
8240 Test that registerClass effects are visible from withing actions
8241 contained in the same frame as the target clip is placed, even if
8242 DoAction comes before DoInitAction, which itself can't see those
8245 2007-09-25 Zou Lunkai <zoulunkai@gmail.com>
8247 * gui/sdl.cpp, gui/sdlsup.h: add sdl_to_gnash_key() and sdl_to_gnash_modifier(),
8249 * server/button_character_instance.cpp: on_event() don't respond to keypress event
8250 when keycode is 0(INVALID).
8252 2007-09-25 Zou Lunkai <zoulunkai@gmail.com>
8254 * testsuite/misc-ming.all/registerClassTest2.c: one more test.
8255 * testsuite/misc-swfc.all/register_class_test3.sc, Makefile.am: one more testcase.
8258 2007-09-25 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8260 * gui/gui.cpp: change shortcut keys to lower case restore old
8263 2007-09-25 Chad Musick <chadmusick@msbx.net>
8265 * server/VM.cpp,.h: Add ClassHierarchy object to VM. Doesn't yet
8266 mark objects, though it will very soon.
8267 * server/asobj/ClassHierarchy.cpp,.h: Extend to use as a namespace
8268 object for ActionScript independent of the "Global" object.
8269 * server/asobj/Global.cpp,.h: Accept a passed ClassHierarchy,
8270 rather than stack constructing one.
8271 * server/parser/Makefile.am: Add asobj directory for use of
8272 ClassHierarchy by abc_block.
8273 * server/parser/Namespace.h: Namespaces contain names, and this
8275 * server/abc_block.h: Change Namespaces to be stored by pointer,
8276 since the ClassHiearchy object does the creation now.
8277 * server/abc_block.cpp: More parsing. Validate super class
8278 of all declared classes, declare stubs in the correct namespaces.
8280 2007-09-24 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8282 * server/gnash.h: correct some keycodes, extend support to
8284 * gui/gtk.cpp: clean up and extend keyboard mapping.
8286 2007-09-24 Sandro Santilli <strk@keybit.net>
8288 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: clarify
8289 test for bogus __proto__ delayed construction. We still need
8290 to find a way to verify registerClass effects handling time.
8291 * server/asobj/xml.cpp: set _status to min 32bit signed int
8292 if value is not a number, cast to_number() to an int otherwise.
8293 * testsuite/actionscript.all/XML.as: two more successes.
8295 2007-09-24 Sandro Santilli <strk@keybit.net>
8297 * testsuite/misc-ming.all/action_execution_order_test5.c:
8298 replicate tests run from SWFACTION_INIT into SWFACTION_CONSTRUCT.
8299 * testsuite/actionscript.all/XML.as: more test for .status.
8300 See patch #6178 for the why.
8302 2007-09-24 Zou Lunkai <zoulunkai@gmail.com>
8304 * testsuite/misc-ming.all/action_execution_order_test5.c: tests _proto__
8305 property of parant/child/brother clips at onInitialize time.
8306 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: add few more
8307 tests for understanding the interesting __proto__ property.
8309 2007-09-24 Sandro Santilli <strk@keybit.net>
8311 * server/sprite_instance.{cpp,h}: moved ActionScript object
8312 construction into its own method. A change introduced by
8313 this commit is that onClipConstruct/onConstruct will be invoked
8314 after tags of frame0. Our testsuite detected no changes (so we
8315 need more). Youtube still works :)
8317 2007-09-24 Zou Lunkai <zoulunkai@gmail.com>
8319 * testsuite/misc-swfc.all/action_execution_order_test10.sc: found a way to
8320 trigger user defined onConstruct with swfc.
8321 * testsuite/misc-ming.all/loop_test6.c: add test for onClipInitialize called
8322 when jumping-back with onClipUnload defined.
8324 2007-09-24 Sandro Santilli <strk@keybit.net>
8326 * testsuite/misc-ming.all/loop_test6.c: Add test for onClipInitialize
8327 also NOT called when jumping-back to after the character lifetime.
8329 2007-09-24 Chad Musick <chadmusick@msbx.net>
8331 * server/namedStrings.h: More documentation,
8332 remove duplicate enumeration
8333 * server/namedStrings.cpp: Don't duplicate string "Stage".
8335 2007-09-24 Chad Musick <chadmusick@msbx.net>
8337 * configure.ac: Add requirement of boost serialization library
8338 * macros/boost.m4: Add requirement of boost serialization library
8340 2007-09-23 Chad Musick <chadmusick@msbx.net>
8342 * server/namedStrings.cpp,.h: New files. Move pre-load string
8343 enumeration from as_object and add new enumerations for the
8344 known ActionScript classes.
8345 * server/asobj/ClassHierarchy.cpp,.h: New files. Delay loading
8346 ActionScript classes until they are needed. At the moment,
8347 does not support loading them as extensions, though this is
8349 * server/Makefile.am: Add new files
8350 * server/Property.h: Define a new type DestructiveGetterSetterProperty
8351 which servers as a place-holder to allow transparent loading
8352 of resources when the value is fetched.
8353 * server/PropertyList.h,.cpp: New functions to allow use of the
8354 (self)Destructive getters.
8355 * server/as_function.cpp as_object.cpp,.h as_value.cpp
8356 edit_text_character.cpp movie_root.cpp sprite_instance.cpp
8357 swf_function.cpp textformat.cpp: Change to new string enums.
8358 * server/asobj/AsBroadcaster.cpp ContextMenu.cpp NetStream.cpp
8359 Stage.cpp xml.cpp: Change to new string enums.
8360 * server/asobj/Global.cpp: Use new ClassHierarchy object to
8361 delay-load actionscript classes, except for Object, Function, Array.
8362 * server/asobj/Makefile.am: Add new files
8363 * server/parser/abc_block.cpp,.h: More work (still incomplete) on
8364 parsing ActionScript 3.
8365 * server/vm/ASHandlers.cpp VM.cpp: Change to new string enums.
8366 * testsuite/misc-ming.all/KeyTest-Runner.cpp: Change to new string enums.
8367 * libbase/extension.cpp,.h: Add a function to load a library by
8368 naming both the library and the function to be called.
8370 2007-09-22 Sandro Santilli <strk@keybit.net>
8372 * testsuite/misc-ming.all/init_action_test.c:
8373 Test that prototype of sprites have been set up to MovieClip one
8374 at time of onClipInitialize call.
8375 * testsuite/misc-swfc.all/movieclip_destruction_test1.swf:
8376 Test that just-placed sprites (at time of init actions execution)
8377 are instances of Object, not MovieClip !!
8379 2007-09-22 Sandro Santilli <strk@keybit.net>
8381 * server/sprite_instance.cpp (stagePlacementCallback): notify
8383 * testsuite/misc-ming.all/registerClassTest2.c: 2 more successes.
8384 * testsuite/swfdec/PASSING: 44 more successes !!
8386 2007-09-22 Sandro Santilli <strk@keybit.net>
8388 * testsuite/misc-ming.all/registerClassTest2.c,
8389 testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
8390 Expect the failures and the success introduced by reverting
8391 the change which broke youtube.
8393 2007-09-22 Chad Musick <chadmusick@msbx.net>
8395 * server/parser/abc_block.cpp: Change data() to &...front() since
8396 data() is not standard.
8398 2007-09-22 Sandro Santilli <strk@keybit.net>
8400 * testsuite/misc-swfc.all/Dejagnu.sc: add 2 args to the totals()
8401 call, one if which is expected of tests to be run, if it doesn't
8402 match actual number of tests run will print and record a FAIL
8404 * testsuite/misc-swfc.all/check.sc: accept an arg in the totals()
8405 macro to tell how many tests in total are expected to be run.
8406 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: expect
8409 2007-09-22 Sandro Santilli <strk@keybit.net>
8411 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: remove
8413 * server/sprite_instance.cpp (execute_frame_tags): revert the
8414 change in init action execution which blew up youtube.
8415 We get more unexpected failures then unexpected succeses with
8416 this, and I won't change them to *expected* for now.
8417 I just felt this patch will limit annoyance to actual users while
8418 we seek a better solution.
8420 2007-09-22 Sandro Santilli <strk@keybit.net>
8422 * server/movie_root.cpp (processQueuedActions): fix a memory leak.
8423 Thanks dli on #gnash for finding out.
8425 2007-09-21 Bastiaan Jacques <bastiaan@bjacques.org>
8427 * backend/render_handler_tri.{cpp,h}: Don't assume the
8428 elements in a std::vector are stored in contiguous memory.
8429 Whenver that must be true, copy the elements into a new
8430 block of memory. Store mesh_sets in the cache as non-
8431 pointer types, so we get automatic memory management. Use
8432 std::sort rather than qsort on the cache vector.
8434 2007-09-21 Chad Musick <chadmusick@msbx.net>
8436 * libbase/tu_file.h: Add support for reading 64-bit doubles.
8437 * server/impl.cpp: Add abc_loader to list of loaders.
8438 * server/stream.cpp,.h: Support necessary read types for AS3.
8439 * server/parser/Makefile.am: Add new files
8440 * server/parser/abc_block.cpp,.h: Changes to parse AS3.
8441 * server/swf/tag_loaders.cpp,.h: Loader for action block (AS3)
8443 2007-09-21 Sandro Santilli <strk@keybit.net>
8445 * server/dlist.h (testInvariant): fix a cast discarding const
8447 * server/sprite_instance.cpp (execute_frame_tags): optimized
8448 execution loop and avoid calling both execute_state and
8449 execute_action (this is propedeutic for DoInitAction possibly
8450 needing to execute in both cases).
8452 2007-09-21 Sandro Santilli <strk@keybit.net>
8454 * server/character.h, server/dlist.cpp,
8455 server/button_character_instance.{cpp,h},
8456 server/movie_instance.{cpp,h}, server/movie_root.cpp,
8457 server/sprite_instance.{cpp,h},
8458 server/video_stream_instance.{cpp,h}:
8459 Rename character::construct to character::stagePlacementCallback
8460 and update documentation to help clarity.
8462 2007-09-21 Sandro Santilli <strk@keybit.net>
8464 * server/sprite_instance.cpp (goto_frame): make
8465 sure m_current_frame always reflect the frame number
8466 in which the control tags being executed were defined.
8468 2007-09-21 Sandro Santilli <strk@keybit.net>
8470 * server/vm/action.cpp (call_method): add more info to the exception
8471 derived from attempts to call a value which is neither a C nor an AS
8473 * server/sprite_instance.cpp (goto_frame): wait for target frame
8474 even if we won't push any action. Fixes bug #21126.
8476 2007-09-21 Chad Musick <chadmusick@msbx.net>
8478 * server/parser/abc_block.cpp,.h: Read AS3 blocks. (unfinished)
8479 * server/parser/Namespace.h: AS3 namespaces (unfinished)
8481 2007-09-20 Sandro Santilli <strk@keybit.net>
8483 * server/edit_text_character.cpp (set_variable_name): create
8484 the new variable if it doesn't exist in registering sprite.
8485 * testsuite/misc-swfc.all/edittext_test1.sc: no more failures
8486 here, but I'm sure it would be easy to break gnash more.
8489 2007-09-20 Sandro Santilli <strk@keybit.net>
8491 * server/edit_text_character.{cpp,h}: add an updateText method
8492 intended to be called by sprite_instance when a registered
8493 text variable is updated; have set_text_value forward the
8494 text change back to the sprite_instance where any
8495 variable name is registered, for proper distribution of
8496 the new text to any other TextField registered with the
8498 * server/sprite_instance.cpp (set_text_value): use the new
8499 updateText to update TextField text when variable name is
8501 * testsuite/misc-swfc.all/edittext_test1.sc: more successes.
8503 2007-09-20 Sandro Santilli <strk@keybit.net>
8505 * server/edit_text_character.{cpp,h}: define a private method
8506 to parse the text variable into a sprite_instance and property name
8507 components, to be used later to update the state of a registered
8508 variable when text is updated otherwise and to unregister the
8509 variable name when unloaded or when variable name changes.
8511 2007-09-20 Chad Musick <chadmusick@msbx.net>
8513 * libbase/string_table.h: Doxygen documentation.
8515 2007-09-20 Zou Lunkai <zoulunkai@gmail.com>
8517 * server/sprite_instance.cpp: goto_frame(), revert a few changes,
8518 which I believe caused the infinite loop when executing get_frame_number_test.swf
8520 2007-09-20 Zou Lunkai <zoulunkai@gmail.com>
8522 * server/asobj/Key.cpp: use key::codeMap instead of key::code.
8524 2007-09-20 Zou Lunkai <zoulunkai@gmail.com>
8526 * server/gnash.h: drop key::gnashKey, reorganize key::code.
8527 * server/event_id.h: make the constructor to take an unsigned char type.
8528 * server/movie_root.cpp, server/button_character_instance.cpp,
8529 server/asobj/Key.cpp: use key::codeMap instead of key::code, fix getAscii().
8530 * gui/gtk.cpp, gui/kde.cpp: update a few key names.
8531 * testsuite/misc-ming.all/key_event_testrunner.cpp: fix bogus tests about
8534 2007-09-19 Sandro Santilli <strk@keybit.net>
8536 * server/sprite_instance.cpp (goto_frame): fix blind jump to target
8537 frame when > frame count. We still want to ensure_frame_loaded
8539 * server/parser/movie_def_impl.{cpp,h}: mutex-protect access to named
8542 2007-09-19 Sandro Santilli <strk@keybit.net>
8544 * extensions/mysql/mysql_db.cpp: use init_member, not set_member, when
8545 initializing symbols (should fix use in SWF6 or lower versions -
8546 untested but pretty sure).
8548 2007-09-19 Chad Musick <chadmusick@msbx.net>
8550 * libbase/string_table.cpp,.h: Make member functions non-static and
8551 add a facility to pre-load some strings.
8552 * server/PropertyList.cpp array.cpp as_environment.cpp as_function.cpp
8553 as_object.cpp as_object.h as_value.cpp character.cpp
8554 edit_text_character.cpp impl.cpp movie_root.cpp sprite_instance.cpp
8555 swf_function.cpp textformat.cpp timers.cpp: Convert string table usage
8556 to enum + instance use.
8557 * server/asobj/AsBroadcaster.cpp ContextMenu.cpp LoadVars.cpp
8558 MovieClipLoader.cpp NetStream.cpp Object.cpp Stage.cpp prophelper.h
8559 xml.cpp xmlsocket.cpp: Convert string table usage to enum + instance
8560 * server/vm/ASHandlers.cpp ActionExec.cpp: Convert string table usage
8561 * server/vm/VM.cpp VM.h: Add pre-load of common property names, convert
8562 string table usage, add string table member.
8563 * server/vm/action.cpp action.h: Remove enumeration of standard properties
8564 with the special handler, use string table enumeration instead. Unifies
8566 * testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c: Success
8567 * testsuite/misc-ming.all/KeyTest-Runner.cpp Makefile.am
8568 attachMovieTestRunner.cpp intervalTestRunner.cpp
8569 key_event_test2runner.cpp key_event_test3runner.cpp
8570 key_event_test5runner.cpp key_event_testrunner.cpp: Convert string table
8572 * testsuite/movies.all/Makefile.am gravity_embedded-TestRunner.cpp:
8573 Convert string table usage
8574 * testsuite/server/GetterSetterTest.cpp PropertyListTest.cpp: Convert
8577 2007-09-19 Sandro Santilli <strk@keybit.net>
8579 * server/edit_text_character.cpp (set_variable_name): reinitialize
8580 text to default value.
8581 * testsuite/misc-swfc.all/edittext_test1.sc: more successes.
8583 2007-09-19 Sandro Santilli <strk@keybit.net>
8585 * gui/gtk.cpp (setInterval): add a note about the fact that the
8586 current way of setting up the FPS timer is bogus. Note that the
8587 problem is related to A/V syncing...
8589 2007-09-19 Sandro Santilli <strk@keybit.net>
8591 * server/character.{cpp,h}: provide a generic
8592 _name getter-setter.
8593 * server/sprite_instance.cpp: use character's version
8594 for _name and _target getter/setter.
8595 * server/edit_text_character.cpp: use character's
8596 _name and _target getter/setter.
8597 * testsuite/actionscript.all/TextField.as: successes
8598 on _name and _target accesses, minor failures.
8599 * testsuite/misc-swfc.all/edittext_test1.sc: successes
8600 on _name and _target access.
8602 2007-09-19 Sandro Santilli <strk@keybit.net>
8604 * testsuite/actionscript.all/TextField.as: add tests
8605 for effects of changing _name.
8607 2007-09-19 Zou Lunkai <zoulunkai@gmail.com>
8609 * server/gnash.h: more enums for extended ascii characters.
8611 2007-09-19 Zou Lunkai <zoulunkai@gmail.com>
8613 * testsuite/misc-swfc.all/edittext_test1.sc, Makefile.am: new testcase for
8614 TextField using swfc. Clearer then Ming based tests. TextField variable
8615 still need some work.
8617 2007-09-19 Sandro Santilli <strk@keybit.net>
8619 * gui/kde_glue_agg.cpp: fix initialization order warning.
8620 * gui/gui.{cpp,h}: draft an attempt at skipping rendering
8621 when late of fps timer. It's experimental, and disabled
8622 by default. Define SKIP_RENDERING_IF_LATE in gui.h to
8625 2007-09-19 Markus Gothe <nietzsche@lysator.liu.se>
8627 * configure.ac: Fixed typo.
8629 2007-09-18 Sandro Santilli <strk@keybit.net>
8631 * server/sprite_instance.{cpp,h}: allow multiple edit_text_character
8632 to be registered with a single variable name.
8633 * testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c:
8634 success in most tests (one still fails).
8636 2007-09-18 Sandro Santilli <strk@keybit.net>
8638 * server/dlist.cpp (unload): don't unload again already-unloaded
8639 characters. Fixes the assertion failure in
8640 action_execution_order_test12.sc.
8642 2007-09-18 Zou Lunkai <zoulunkai@gmail.com>
8644 * testsuite/misc-swfc.all/action_execution_order_test12.sc, Makefile.am:
8645 add new testcase, caught an assertion here. Disable it if it blocks your
8648 2007-09-18 Sandro Santilli <strk@keybit.net>
8650 * server/sprite_instance.cpp (execute_frame_tags): execute
8651 init actions *after* DLIST tags.
8652 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
8653 No more failures in this case.
8654 * testsuite/misc-ming.all/init_action_test.c: a single
8655 failure was introduced by this comit, for known reason.
8656 We decided to accept the failure and take care of it later.
8658 2007-09-18 Sandro Santilli <strk@keybit.net>
8660 * server/array.{cpp,h}: Implement enumerateNonProperties().
8661 Still not 100% correct but fixes youtube controls positioning
8663 * testsuite/actionscript.all/array.as: tests for enumeration
8664 of array properties.
8666 2007-09-18 Sandro Santilli <strk@keybit.net>
8668 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
8669 Add visual traces of actions while being executed; add
8670 comment about other finding.
8672 2007-09-18 Sandro Santilli <strk@keybit.net>
8674 * server/swf/DoActionTag.h (doInitActionLoader): pass 'cid' value
8675 to add_init_action().
8676 * server/parser/movie_definition.h (add_init_action): add support for
8677 a 'cir' parameter, to ignore duplicated init actions for the same
8679 * server/parser/sprite_definition.h: update add_init_action signature
8680 * server/parser/movie_def_impl.{cpp,h}: update add_init_action
8681 signature, use a std::set to keep note of character id for which
8682 init actions have been added already, discarding the rest.
8683 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: more
8686 2007-09-18 Sandro Santilli <strk@keybit.net>
8688 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc:
8689 Add test to verify init actions have been executed
8690 in the correct order.
8692 2007-09-17 Sandro Santilli <strk@keybit.net>
8694 * server/edit_text_character.{cpp,h} (format_text): get text alignment
8695 using a new private function, which checks for _autoSize settings too.
8697 * server/swf/tag_loaders.cpp (define_bits_jpeg3_loader): fix compiler
8698 warning (signed vs. unsigned comparison).
8700 2007-09-17 Tomas Groth Christensen <tomasgroth@yahoo.dk>
8702 * libbase/string_table.h: Fixed compilation for non-32 bit platforms.
8703 * server/parser/video_stream_def.{cpp,h}: Use CapitalCase for types.
8705 2007-09-17 Lauri Mylläri <rez>
8707 * server/swf/tag_loaders.cpp: Also parse DelaySeek field for MP3
8708 in DEFINESOUND, fixes bug #21094.
8710 2007-09-17 Sandro Santilli <strk@keybit.net>
8712 * server/parser/movie_definition.h: changed signature of get_playlist:
8713 rename to getPlaylist, return by pointer, have the default
8714 implementation return 0.
8715 * server/parser/BitmapMovieDefinition.{cpp,h}: don't build a dummy
8716 PlayList just for implementing the get_playlist abstract method,
8717 it's not needed anymore (the default implementation does fine).
8718 * server/parser/movie_def_impl.{cpp,h}: use a std::map instead of a
8719 std::vector to contain PlayList of each frame. This reduced memory
8720 use for movies that don't have actions in *each* frame and removes
8721 race conditions due to unexpected growth of frames while parsing
8722 (when number of frames advertised in header doesn't match number
8723 of SHOWFRAME found in the stream); (add_frame_name): don't insist
8724 in _frames_loaded being less then advertised frame count.
8725 * server/parser/sprite_definition.{cpp,h}: use a std::map instead
8726 of a std::vector for PlayList of frames. Cleanup construction
8727 of dynamic sprite definitions now that we don't need to create
8728 a fake PlayList only to store a dummy execute tag.
8729 * server/sprite_instance.cpp: update calls to getPlaylist.
8731 2007-09-17 Zou Lunkai <zoulunkai@gmail.com>
8733 * server/gnash.h: another code map for proper key handling.
8735 2007-09-16 Sandro Santilli <strk@keybit.net>
8737 * testsuite/actionscript.all/Number.as: more tests for Number()
8738 returning a primitive number rather then an object. I suspect
8739 most builtin functions will need to support both invocation as
8740 constructor *and* simple invocation.
8741 * testsuite/actionscript.all/ops.as: more tests for comparison between
8742 "different" nan values... :/
8744 2007-09-16 Bastiaan Jacques <bastiaan@bjacques.org>
8746 * plugin/klash/klash_part.{cpp,h}: Properly add URL arguments to
8747 the Klash commandline. This enables Youtube playback in Konqueror.
8749 2007-09-16 Chad Musick <chadmusick@msbx.net>
8751 * libbase/string_table.cpp,.h: A string table to cut down on memory
8752 usage and lookup time for properties, particularly in inheritance.
8753 Preparation for AS3.
8754 * libbase/Makefile.am: Add string_table to list of files which the
8755 Makefile knows about.
8757 * PropertyList.cpp,.h array.cpp,.h as_environment.cpp as_function.cpp
8758 as_object.cpp,.h as_value.cpp character.cpp edit_text_character.cpp,.h
8759 movie_root.cpp sprite_instance.cpp,.h swf_function.cpp textformat.cpp
8760 timers.cpp: Update to use string table.
8761 * server/asobj directory:
8762 AsBroadcaster.cpp ContextMenu.cpp LoadVars.cpp MovieClipLoader.cpp
8763 NetStream.cpp Object.cpp Stage.cpp prophelper.h xml.cpp xml.h
8764 xmlsocket.cpp: Update to use string table.
8765 * server/parser/action_buffer.h: Update to use string table.
8766 * server/vm directory:
8767 ASHandlers.cpp ActionExec.cpp action.cpp action.h: Update to use string
8769 * testsuite/misc-ming.all directory:
8770 KeyTest-Runner.cpp attachMovieTestRunner.cpp intervalTestRunner.cpp
8771 key_event_test2runner.cpp key_event_test3runner.cpp
8772 key_event_test5runner.cpp key_event_testrunner.cpp: Update to use
8774 * testsuite/movies.all/gravity_embedded-TestRunner.cpp: Update to use
8776 * testsuite/server/GetterSetterTest.cpp PropertyListTest.cpp: Update to
8778 * server/swf.h: More notes about AS3 operations.
8780 2007-09-16 Zou Lunkai <zoulunkai@gmail.com>
8782 * server/gnash.h: add gnashCharacter code for proper key handling.
8784 2007-09-15 Rob Savoye <rob@ripple.welcomehome.org>
8786 * libbase/test.as: Only execute tests if the Lirc extension is
8787 installed. Check return codes for a clean exit.
8788 * libbase/lirc.cpp: Reduce debugging verbosity. Return a pointer
8789 with real memory behind it instead of by acident.
8790 * libbase/lirc.h: Add a field to contain the button name.
8791 * libbase/network.cpp: Don't just see if fd is set, make sure it's
8792 greater than zero to avoid problems!
8794 2007-09-14 Rob Savoye <rob@ripple.welcomehome.org>
8796 * extensions/lirc/test.as: Test case for Lirc extension.
8797 * extensions/lirc/Makefile.am: Chnage from lirc.* to lirc_ext.* to
8798 avoid name collisions.
8799 * libbase/lirc.h, lirc.cpp: New files for lirc interface for
8801 * extensions/lirc_ext.h, lirc_ext.cpp: Renamed from lirc.*.
8802 * libbase/extensions.cpp: Change how extraneous directories get
8804 * Makefile.am: Add debug info for lirc.
8805 * backend/Makefile.am: Wrap conditionals around building the
8807 * extensions/Makefile.am: Add Lirc extension.
8808 * extensions/dejagnu/dejagnu.cpp: Change debug support to log_*().
8809 * gui/Makefile.am: Add LIRC flags to build.
8810 * libbase/Makefile.am: Add lirc.cpp and lirc.h, new files for lirc
8812 * libbase/network.cpp, network.h: Add connectSocket() for talking
8815 2007-09-14 Sandro Santilli <strk@keybit.net>
8817 * server/DynamicShape.cpp: optimized bounds computation by the
8819 * testsuite/misc-ming.all/DrawingApiTest.as: add bounds tests.
8820 * server/shape.{cpp,h}: add path::expandBounds to compute bounds
8822 * server/parser/shape_character_def.cpp (compute_bound): delegate
8823 computation of path bounds to the new path method.
8825 2007-09-14 Sandro Santilli <strk@keybit.net>
8827 * server/FreetypeGlyphsProvider.{cpp,h}: use USE_FREETYPE instead
8828 of HAVE_FREETYPE2 ..
8829 * macros/freetype.m4: don't miss to add a -I to cflags; add a note
8830 about the non-sense of the way we check for /usr/include.
8832 2007-09-14 Markus Gothe <nietzsche@lysator.liu.se>
8834 * configure.ac: Look for broken -fvisibility-inlines-hidden.
8835 * macros/mtasc.m4: Added fallback path to /usr/share/ocaml/mtasc/std.
8837 2007-09-14 Markus Gothe <nietzsche@lysator.liu.se>
8839 * server/asobj/BevelFilter_as.cpp, server/asobj/BitMapFilter_as.cpp,
8840 server/asobj/BlurFilter_as.cpp, server/asobj/ColorMatrixFilter_as.cpp,
8841 server/asobj/ConvolutionFilter_as.cpp,
8842 server/asobj/DropShadowFilter_as.cpp, server/asobj/GlowFilter_as.cpp,
8843 server/asobj/GradientBevelFilter_as.cpp,
8844 server/asobj/GradientGlowFilter_as.cpp,
8845 server/vm/ASHandlers.cpp, libbase/tree.hh
8847 Fixes for compilation with --enable-strict.
8849 2007-09-13 Tomas Groth Christensen <tomasgroth@yahoo.dk>
8851 * server/parser/video_stream_def.{h,cpp}: Tie embedded video
8852 frames to the swf-frame it is embedded in. The containers the
8853 video frame is stored in was merged into one.
8855 2007-09-13 Rob Savoye <rob@ripple.welcomehome.org>
8857 * libbase/extension.cpp: Change alorithm for which files to ignore
8860 * macros/lirc.m4: Search for lirc files, so we can support a
8863 2007-09-13 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
8865 * configure.ac, testsuite/misc-ming.all/Makefile.am: add conditional
8866 for Ming version at least 0.4 before building get_frame test.
8867 * libbase/rc.cpp: set writelog off by default (bug #21037).
8870 2007-09-13 Sandro Santilli <strk@keybit.net>
8872 * server/sprite_instance.cpp (restart): don't call construct again, to
8873 avoid re-registering with the global instance list.
8874 * server/movie_root.h (addLiveChar): assert the character being
8875 registered is not already in the list
8876 * server/button_character_instance.{cpp,h}: remove dead code
8877 (restart_characters); (construct): don't call restart right
8880 2007-09-13 Sandro Santilli <strk@keybit.net>
8882 * server/movie_root.cpp: cleanup debugging of ever growing list
8884 2007-09-13 Sandro Santilli <strk@keybit.net>
8886 * server/button_character_instance.{cpp,h}: implement unload() in an
8887 attempt to properly mark as unloaded any character registered in the
8888 global instance list (could happen for child sprites).
8889 * server/movie_root.cpp (markReachableResources): mark all characters
8890 in the _liveChars. This makes Gnash more robust, but hides a problem
8891 with the global instance list always growing. A proper fix would be
8892 making sure that for *all* characters removed from a displaylist the
8893 character::unload() is called, which marks the character as unloaded
8894 and thus removes it from the global instance list. The change above
8895 to button_character_instance seems not enough. I left debugging
8896 output here so you can see how the list keeps growing.
8899 2007-09-13 Sandro Santilli <strk@keybit.net>
8901 * server/movie_root.{cpp,h} (restart): properly cleanup
8902 action queue and instances list, reset levels so that
8903 only _level0 is kept. Still not 100% correct but fixes
8906 2007-09-13 Sandro Santilli <strk@keybit.net>
8908 * server/dlist.{cpp,h}: drop the second list only used for
8909 chils advancement (_timelineChars) and associated accessors
8910 (visitAllByReversePlacement).
8911 * server/movie_root.{cpp,h}: Add a global "advanceable" characters
8912 list, used for advancement (in ::advance); provide an addLiveChar()
8913 method to add characters that are willing to be advanced there.
8914 * server/button_character_instance.cpp (construct): register as
8915 live character with the movie_root.
8916 * server/video_stream_instance.{cpp,h}: add a ::construct() method
8917 to properly register as live character with the movie_root
8918 * server/sprite_instance.cpp (advance_sprite): forget about advancing
8919 childs, movie_root will take care of that; (construct): register
8920 self as a live character with the movie_root.
8921 * testsuite/misc-ming.all/action_execution_order_test11.c: no more
8922 expected failures here.
8924 2007-09-13 Sandro Santilli <strk@keybit.net>
8926 * server/sprite_instance.{cpp,h}: drop obsoleted oldDisplayList.
8928 2007-09-13 Sandro Santilli <strk@keybit.net>
8930 * server/sprite_instance.cpp (sprite_create_text_field):
8931 fix log_aserror calls (too few, too many args and
8932 log_error to log_aserror).
8934 2007-09-13 Sandro Santilli <strk@keybit.net>
8936 * gui/Makefile.am, gui/NullGui.cpp, libbase/Makefile.am,
8937 libbase/triangulate_impl.h, libbase/tu_timer.cpp,
8938 libbase/tu_timer.h, server/timers.h, server/asobj/NetStream.h,
8939 server/asobj/NetStreamFfmpeg.cpp, server/vm/VM.cpp,
8940 utilities/processor.cpp:
8941 Revert Markus changes, as they introduce too many obvious failures.
8942 Please avoid commits triggering failures on 'make check' and do
8943 your best to have 'make check' run as many tests as possible.
8945 2007-09-13 Markus Gothe <nietzsche@lysator.liu.se>
8947 * gui/NullGui.cpp libbase/Makefile.am libbase/triangulate_impl.h
8948 server/timers.h server/asobj/NetStream.h
8949 server/asobj/NetStreamFfmpeg.cpp
8950 server/vm/VM.cpp utilities/processor.cpp
8953 libbase/tu_timer.cpp libbase/tu_timer.h
8955 Overhauled tu_timer with the se of std::clock and boost/timer.hpp.
8956 Might, break things, but it better get fixed this way.
8958 2007-09-12 Sandro Santilli <strk@keybit.net>
8960 * testsuite/actionscript.all/Inheritance.as: more tests for 'super'.
8962 2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>
8964 * backend/render_handler_ogl.cpp: Use the average of X and Y scaling
8965 to determine the proper line thickness.
8967 2007-09-12 Sandro Santilli <strk@keybit.net>
8969 * server/sprite_instance.cpp (sprite_create_text_field): check for
8970 negative dimensions. Fixes bug #21021.
8971 * testsuite/actionscript.all/TextField.as: Add test for negative
8972 dimensions given to createTextField().
8974 2007-09-12 Sandro Santilli <strk@keybit.net>
8976 * server/asobj/AsBroadcaster.cpp: add support for passing arguments
8977 for broadcasted message handlers.
8978 * testsuite/actionscript.all/AsBroadcaster.as: add tests for arguments
8979 passed to broadcasted messages.
8981 2007-09-12 Sandro Santilli <strk@keybit.net>
8983 * server/as_function.{cpp,h}: make 'prototype' a proper property,
8984 change getPrototype() to return by intrusive_ptr.
8985 * server/sprite_instance.cpp: update call to getPrototype().
8987 2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>
8989 * backend/render_handler_ogl.cpp: Make sure we don't try to use
8990 a line width of 0: normalize the width.
8992 2007-09-12 Sandro Santilli <strk@keybit.net>
8994 * server/as_environment.cpp (parse_path): revert zou change as it
8995 breaks callFunction_testrunner (assertion failure).
8997 2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>
8999 * backend/render_handler_ogl.cpp: Implement getPixel().
9001 2007-09-12 Sandro Santilli <strk@keybit.net>
9003 * testsuite/actionscript.all/Inheritance.as: more tests for double
9006 2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9008 * gui/gtk.cpp, gui/gui.{cpp,h},server/movie_root{cpp,h}
9009 * server/event_id.h, server/asobj/Key.{cpp,h}
9010 * server/edit_text_character.cpp
9011 * testsuite/MovieTester.cpp: Revert changes because
9012 it causes too many problems. There is a better way.
9014 2007-09-12 Sandro Santilli <strk@keybit.net>
9016 * testsuite/actionscript.all/Inheritance.as: few more tests (maybe
9017 redundant) for constructor and __constructor__
9019 2007-09-12 Bastiaan Jacques <bastiaan@bjacques.org>
9021 * backend/render_handler_ogl.cpp: Add a debugging function
9022 called check_error(), enabled by toggling the DEBUG_OPENGL
9023 macro. Don't bother setting variables to their defaults.
9025 2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9027 * testsuite/MovieTester{cpp,h}: remove utf8 from keypress,
9029 * gui/kde.cpp: Add default value to utf8.
9031 2007-09-12 Zou Lunkai <zoulunkai@gmail.com>
9033 * server/as_environment.cpp: parse_path() cleanups.
9035 2007-09-12 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9037 * gui/gtk.cpp: pass unicode of key event when notifying gui.
9038 * gui/gui.{cpp,h}: pass unicode to movie_root.
9039 * server/movie_root{cpp,h}: notify key listeners of unicode.
9040 * server/event_id.h: add m_unicode.
9041 * server/asobj/Key.{cpp,h}: fix getAscii().
9042 * server/edit_text_character.cpp: read unicode, not swf keycode.
9043 * testsuite/MovieTester{cpp,h}: update notify_key_event test.
9045 2007-09-12 Chad Musick <chadmusick@msbx.net>
9047 * server/as_value.cpp: Move test to silence compiler warnings.
9049 2007-09-12 Sandro Santilli <strk@keybit.net>
9051 * server/sprite_instance.cpp (construct): properly initialize
9052 the '__constructor__' and 'constructor' members when a class
9053 was registered with our definition.
9054 * testsuite/misc-ming.all/registerClassTest2.c: no more failures here.
9056 2007-09-12 Chad Musick <chadmusick@msbx.net>
9058 * server/as_value.cpp: Make sure that exceptions don't
9059 cause asserts, even if they escape into the wild.
9060 (This escape is an error, but perhaps it should not
9063 2007-09-12 Sandro Santilli <strk@keybit.net>
9065 * server/vm/ActionExec.cpp: cleanup variables initialization
9067 * testsuite/actionscript.all/MovieClip.as: minor tests for
9070 2007-09-12 Zou Lunkai <zoulunkai@gmail.com>
9072 * server/vm/ASHandlers.cpp: drop parse_path for ActionCallFunction, it's
9073 unnecessary and has case sensitiviness issue.
9074 * testsuite/misc-ming.all/callFunction_test.c: two more passes.
9076 2007-09-12 Chad Musick <chadmusick@msbx.net>
9078 * server/as_value.cpp,h: Add exception types to as_value.
9079 * server/vm/ASHandlers.cpp: Implement try and throw
9080 * server/vm/ActionExec.cpp,h: Support for try and throw
9081 * testsuite/misc-mtasc.all/exception.as: Exceptions now work.
9083 2007-09-11 Sandro Santilli <strk@keybit.net>
9085 * server/as_object.{cpp,h} (copyProperties): don't copy __proto__.
9087 2007-09-11 Sandro Santilli <strk@keybit.net>
9089 * testsuite/actionscript.all/AsBroadcaster.as: a couple more tests
9090 for return from broadcastMessage.
9091 * server/asobj/AsBroadcaster.cpp: fix return from broadcastMessage.
9092 * testsuite/swfdec/PASSING: asbroadcaster-broadcastMessage-retval-*.swf
9094 * server/as_value.cpp (to_debug_string): fix debug print for movieclip
9097 2007-09-11 Sandro Santilli <strk@keybit.net>
9099 * server/array.{cpp,h}: add removeFirst and visitAll methods.
9100 * server/as_object.{cpp,h}: add getMember and callMethod memebers
9101 for ActionScript-like coding.
9102 * server/asobj/: Makefile.am, Global.cpp, AsBroadcaster.{cpp,h}:
9103 First draft at AsBroadcaster. NOTE: this is not 100% compatible
9104 but contains some special code to handle corner cases for compatbility
9105 sake (mostly to avoid breaking swfdec testcases). The normal case
9106 will still be faster then the average one.
9108 2007-09-11 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9110 * server/gnash.h: add more keycodes.
9111 * gui/gtk.cpp: pass more keystrokes.
9112 * server/edit_text_character.cpp: do not add character to string
9115 2007-09-11 Sandro Santilli <strk@keybit.net>
9117 * testsuite/swfdec/PASSING: super-this-5.swf passes (probably since
9119 * testsuite/anaylse-results.sh: fix print of unexpected successes.
9121 2007-09-11 Bastiaan Jacques <bastiaan@bjacques.org>
9123 * backend/render_handler_ogl.cpp: Disable polygon smoothing for now as
9124 it has some unwanted side effects.
9126 2007-09-11 Bastiaan Jacques <bastiaan@bjacques.org>
9128 * backend/render_handler_ogl.cpp: GL_MODELVIEW is the default matrix
9129 mode, so don't bother setting it at every opportunity. Rather, reset it
9130 to the standard value after it is changed to something else. Round
9131 lines by drawing a round point on the end of every line (fixes
9132 #18014). Enable pologon smoothing (anti-aliasing).
9134 2007-09-11 Zou Lunkai <zoulunkai@gmail.com>
9136 * server/asobj/Global.cpp: don't initialize Function class for SWF < 6.
9137 * testsuite/actionscript.all/Inheritance.as,
9138 testsuite/actionscript.all/Function.as: disable a few confusing
9139 and duplicated(but correct) tests for SWF5. more passes.
9140 * testsuite/actionscript.all/Number.as,
9141 testsuite/actionscript.all/toString_valueOf.as: more passes.
9143 2007-09-10 Rob Savoye <rob@ripple.welcomehome.org>
9145 * macros/curl.m4: sed any "-L/usr/lib" off the output of
9146 curl-config. This breaks some 64 bit systems.
9147 * macros/kde.m4: Do an ls instead of a test to find kde libraries.
9148 * macros/pango.m4, gtk2.m4, gnashpkgtool.m4, ffmpeg.m4: Use
9149 --libs-only-l with pkg-config as sometimes the path is wrong for
9152 2007-09-10 Sandro Santilli <strk@keybit.net>
9154 * server/parser/morph2_character_def.cpp (read):
9155 Set shapes bounds *after* calling ::read() on them.
9158 2007-09-10 Sandro Santilli <strk@keybit.net>
9160 * server/bitmap_info.h: drop OGL-specific members.
9161 * libbase/image.{cpp,h}: cleanup the image_base interface:
9162 - make more members private to reduce chaces of buffer size
9163 and associated size-describing members mismatch (still more
9165 - add more methods from statics which do not have access
9166 to now-private members
9167 * backend/render_handler_ogl.cpp: add OGL-specific members
9168 to bitmap_info_ogl, update uses of image_base.
9169 * backend/render_handler_agg.cpp, libbase/embedVideoDecoderFfmpeg.cpp,
9170 libbase/embedVideoDecoderGst.cpp, libbase/image_filters.cpp,
9171 server/FreetypeGlyphsProvider.cpp, fill_style.cpp,
9172 server/fontlib.{cpp,h}, server/parser/BitmapMovieDefinition.cpp,
9173 server/swf/tag_loaders.cpp, server/asobj/NetStream.cpp,
9174 server/asobj/NetStreamFfmpeg.cpp, backend/render_handler_cairo.cpp:
9175 Update uses of image_base
9177 2007-09-10 Sandro Santilli <strk@keybit.net>
9179 * server/asobj/NetStreamGst.cpp (GstInstallPluginsResultCb): comment
9180 out unused parameter and garbage message.
9181 * server/parser/video_stream_def.cpp (dtor): delete [] since we
9182 allocated with new [].
9183 * libbase/Makefile.am: drop image_filters.cpp (seems unused)
9184 * server/dlist.cpp (reset): remove unused variable.
9186 2007-09-10 Zou Lunkai <zoulunkai@gmail.com>
9188 * testsuite/misc-ming.all/Makefile.am: enable tow old testcases.
9189 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: one more
9190 test about init actions.
9192 2007-09-10 Chad Musick <chadmusick@msbx.net>
9194 * server/fill_style.cpp: Correct handling of morph fills.
9195 * server/styles.cpp: Correct handling of morph colors.
9196 * server/parser/morph2_character_def.cpp: Remove @@hack
9197 line, and fix underlying problem instead. Should fix
9198 bug #19085. Morph and Morph2 shapes now work correctly.
9199 * server/parser/shape_character_def.cpp: Be sure to read
9200 on alignment where needed.
9202 2007-09-08 Sandro Santilli <strk@keybit.net>
9204 * server/parser/video_stream_def.h: document class members,
9205 add some notes or todo items
9206 * server/parser/video_stream_def.cpp (read): add a TODO item
9207 as I think we're misreading the VIDEOFRAME tag.
9209 2007-09-07 Sandro Santilli <strk@keybit.net>
9211 * server/video_stream_instance.h: keep definition by
9212 intrusive_ptr (just for consistency with other
9213 character instances)
9214 * server/parser/video_stream_def.cpp (get_frame_data):
9215 always set output parameters to 0 if requested frame
9216 number is not available.
9218 2007-09-07 Sandro Santilli <strk@keybit.net>
9220 * server/dlist.{cpp,h}: change signature of .reset() to
9221 take a sprite_instance for calling set_invalidated() when
9223 * server/sprite_instance.cpp (restoreDisplayList): update
9224 call to DisplayList::reset() - this optimizes loop-backs
9225 and fixes a failure introduced by previous commit
9226 (it's nice to see that performance issues are also tested
9227 by our testsuite - we'd just need some more)
9229 2007-09-07 Sandro Santilli <strk@keybit.net>
9231 * server/sprite_instance.cpp (restoreDisplayList): don't use
9232 a copy of the display_list to optimize the call to set_invalidated.
9233 Removing characters from the copy would shift unloaded characters
9234 to a different depth, which in turn would fail an assertion
9235 (which is *needed* or set_invalidated would not include invalidated
9236 bounds of just-unloaded characters).
9237 BTW, this suggests me we need a lot of tests for inv.bounds. as the
9238 latest changes for depth swap on unload did likely break a few
9241 2007-09-07 Sandro Santilli <strk@keybit.net>
9243 * server/sprite_instance.cpp: disable the too many debugging
9244 prints left over from the big action order commit.
9246 2007-09-07 Sandro Santilli <strk@keybit.net>
9248 * testsuite/anaylse-results.sh: add detailed report
9249 of unexpected successes and failures.
9251 2007-09-07 Sandro Santilli <strk@keybit.net>
9253 * testsuite/actionscript.all/Makefile.am,
9254 testsuite/misc-ming.all/Makefile.am,
9255 testsuite/misc-mtasc.all/Makefile.am,
9256 testsuite/misc-swfc.all/Makefile.am,
9257 testsuite/misc-swfmill.all/Makefile.am,
9258 testsuite/swfdec/Makefile.am:
9259 Don't have 'make check' fail here, rely
9260 on analyzer to tell if something went unexpected.
9261 This is to help with intermittent failures forcing
9262 running the expensinve check over and over again.
9264 2007-09-07 Sandro Santilli <strk@keybit.net>
9266 * testsuite/anaylse-results.sh: exit with a failure if any real
9267 failure or unexpected success is found in the logs. Cleanup
9268 presentation code and output (the latter to now which subdirs have
9269 failures or unexpected successes).
9271 2007-09-07 Sandro Santilli <strk@keybit.net>
9273 * server/dlist.cpp (output operator): don't compare iterators from
9274 different sequences !
9275 * server/movie_instance.cpp (advance): don't invoke ONLOAD event
9276 handler, the event will be queued by ::construct instead
9277 * server/movie_root.cpp (setRootMovie): process actions
9278 queued by effect of root movie construction.
9279 * server/sprite_instance.{cpp,h}:
9280 - Drop do_action(), m_action_list and m_on_event_load_called members.
9281 - Make ::construct virtual so it can be overridden by movie_instance.
9282 - Have add_action_buffer queue globally or execute actions immediately depending
9283 on a new (misnamed) _callingFrameActions flag (I want to cleanup this part next).
9284 Basically, all actions are queued to the global list, with two
9285 exceptions: init actions and callFrame actions.
9286 - Expose a new public queueAction(action_buf&) method, currenly
9287 unused but possibly for use in a cleanup of the preceding queue-or-execute
9289 - Move registration as core broadcaster listener code into its own
9290 function (registerAsListener).
9291 - Refactor restoreDisplayList() to also execute *action* tags of
9292 target frame, so to get order right.
9293 - Far cleaner advance_sprite() implementation.
9294 * testsuite/MovieTester.cpp (ctor): properly construct root movie,
9295 and render after construction.
9296 * testsuite/swfdec/swfdec_gnash_tester: advance 10 times as intended
9297 by swfdec testsuite, not 11 as we needed to do due to gnash bugs.
9298 * testsuite/misc-ming.all/: action_execution_order_extend_test.c,
9299 action_execution_order_test2.c, action_execution_order_test4.c,
9300 action_execution_order_test5.c, action_execution_order_test7.c,
9301 action_execution_order_test9.c, action_execution_order_test10.sc:
9303 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc: SUCCESSES !
9304 * testsuite/swfdec/PASSING: SUCCESSES !
9306 2007-09-07 Sandro Santilli <strk@keybit.net>
9308 * testsuite/misc-mtasc.all/: level5.as, level99.as: check
9309 that at time of first-frame actions execution for loaded movies,
9310 _currentframe is set to 1.
9311 * server/sprite_instance.cpp (loadMovie): don't use
9312 movie_root::setRootMovie for loading external movies,
9313 as that method is meant for kick-start only.
9314 * server/vm/action.cpp: remove dead code.
9316 2007-09-07 Sandro Santilli <strk@keybit.net>
9318 * testsuite/misc-swfc.all/action_execution_order_test10.sc:
9319 check that _currentframe is 1 when actions in first frame of
9321 * server/movie_instance.{cpp,h}: add overridden ::construct
9322 method, taking care of ensuring frame1 is completely loaded
9323 and calling the superclass version of it.
9324 * server/movie_root.cpp (setLevel): call ::construct on newly
9325 added levels (including level0).
9327 2007-09-07 Sandro Santilli <strk@keybit.net>
9329 * server/vm/VM.{cpp,h}: change the VM::init() functionality
9330 to NOT instantiate the movie definition. This is propedeutic
9331 for a cleanup in movie_instance construction, which will be
9332 performed by movie_root::setLevel in next patch.
9333 * gui/Player.cpp, testsuite/MovieTester.cpp,
9334 testsuite/server/DisplayListTest.cpp,
9335 testsuite/server/GetterSetterTest.cpp,
9336 testsuite/server/PropertyListTest.cpp,
9337 utilities/processor.cpp:
9338 Update VM & stage (movie_root) initialization calls
9339 to take into account VM::init() semantic change.
9341 2007-09-06 Sandro Santilli <strk@keybit.net>
9343 * testsuite/misc-ming.all/action_execution_order_test4.c: more
9344 explicit test showing that defining onLoad for _root in first
9345 frame works, while doesn't work for child sprites.
9346 * server/sprite_instance.cpp (add_display_object): only syntetize
9347 and instance name when actually placing a new character (simplifies
9348 the code and fixes a case related to ratio compatibility).
9350 2007-09-06 Tomas Groth Christensen <tomasgroth@yahoo.dk>
9352 * libbase/FLVParser.cpp: Made it more robust by accepting empty
9353 tags, fixing bug #20889.
9354 * server/video_stream_instance.cpp: Check for data being NULL.
9355 * server/asobj/NetStreamFfmpeg.cpp: A few changes to make it
9356 work better with only video or audio - not complete yet.
9358 2007-09-06 Sandro Santilli <strk@keybit.net>
9360 * testsuite/misc-swfc.all/: Dejagnu.sc, check.sc:
9361 Also print expression being tested with {x}check_equals
9362 * testsuite/misc-ming.all/action_execution_order_test1.c: Add tests
9363 showing that onClipLoad event can reference self and characters placed
9364 either before or after the character carrying that event.
9366 2007-09-06 Zou Lunkai <zoulunkai@gmail.com>
9368 * testsuite/misc-ming.all/action_execution_order_test3.c: Reorganize and recomment
9369 the source file, please make sure you know the tags order of produced swf file
9372 2007-09-05 Sandro Santilli <strk@keybit.net>
9374 * server/dlist.cpp (removeUnloaded): also remove from _timelineChars.
9376 2007-09-05 Sandro Santilli <strk@keybit.net>
9378 * testsuite/misc-ming.all/action_execution_order_test3.c: attempt
9379 to test REMOVEOBJECT before DOACTION (failed though, as Ming seems
9380 to keep placing REMOVEOBJECT tags adjacent instead).
9381 This test is reported as an evidence of behaviour 2 in
9382 ActionsExecutionOrder#Verified_behaviour wiki page, so we either
9383 need another or that behaviour is not verified !!
9385 2007-09-05 Ivor Blockley <meteoryte@yahoo.com.au>
9387 * server/vm/action.{cpp,h}: add htmlText property to
9388 as_standard_member ENUM
9389 * server/edit_text_character.{cpp,h}: add html property and cleanup
9390 handling of htmlText (note: still just strips tags at the moment).
9391 * testsuite/actionscript.all/TextField.as: 5 new passes, 1 new failure
9393 2007-09-05 Sandro Santilli <strk@keybit.net>
9395 * server/dlist.{cpp,h}: also maintain a list of characters by
9396 placement and provide a visitByPlacement for visiting them.
9397 * server/sprite_instance.cpp: (advance_sprite): visit DisplayList
9398 in reverse-placement order when advancing old and newly added
9400 * testsuite/misc-ming.all/action_execution_order_test2.c: one success
9401 in action execution order.
9403 2007-09-05 Tomas Groth Christensen <tomasgroth@yahoo.dk>
9405 * backend/sound_handler_{sdl,gst}.cpp: Remove primitive
9406 audio syncing code. Fixes bug #20866 and #20851, but reopens
9409 2007-09-05 Sandro Santilli <strk@keybit.net>
9411 * server/dlist.{cpp,h}: add ::unload method for taking
9412 care of unloads triggered by parent unload.
9413 * server/sprite_instance.cpp (unload): use DisplayList::unload
9414 * testsuite/misc-swfc.all/movieclip_destruction_test4.sc: fix
9415 destruction of childs w/out onUnload event handler defined.
9417 2007-09-05 Zou Lunkai <zoulunkai@gmail.com>
9419 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: more tests about
9420 initactions, gnash fails by not respecting the actions order.
9421 * testsuite/misc-swfc.all/movieclip_destruction_test4.sc: more tests for
9422 catching unloaded character bug, got a xcheck.
9424 2007-09-05 Markus Gothe <nietzsche@lysator.liu.se>
9426 * server/asobj/MovieClipLoader.cpp: iterator -> const_iterator.
9427 * libbase/timer.cpp: Added commentary.
9428 * backend/sound_handler_sdl.cpp: Fixed conflict with namespaces from
9430 * utilities/*.cpp: #ifdef ENABLE_NLS.
9431 * testsuit/libamf.all/*.cpp: Fixed GNUisms.
9433 2007-09-04 Sandro Santilli <strk@keybit.net>
9435 * server/sprite_instance.cpp: always check if we've been unloaded
9436 by effect of a call to on_event(). Fixes bug #20974.
9438 2007-09-04 Sandro Santilli <strk@keybit.net>
9440 * server/parser/sprite_definition.cpp (read): simplify handling of
9441 malformed sprite definition (last SHOWFRAME not followed by END).
9442 Fixes high CPU use and inresponsiveness while playing
9445 2007-09-04 Sandro Santilli <strk@keybit.net>
9447 * server/character.{cpp,h}: add hasEventHandler() and queueEvent()
9448 methods. Implement ::unload by queuing the UNLOAD event (not its
9450 * server/vm/ExecutableCode.h: Add QueuedEvent "executable code", for
9451 queuing events rather then handlers.
9453 2007-09-04 Sandro Santilli <strk@keybit.net>
9455 * server/sprite_instance.h: make execute_action() public, for use
9456 by DoActionTag (for init actions).
9457 * server/swf/DoActionTag.h: execute init actions by directly
9458 execute them (opposed to use add_action_buffer which queues them)
9459 * server/sprite_instance.cpp (execute_frame_tags): simplify execution
9460 of init tag (simply execute them rather then have them queue and
9461 then execute the queue).
9463 2007-09-04 Sandro Santilli <strk@keybit.net>
9465 * NEWS: updated by copying from 0.8.1
9466 * server/edit_text_character.cpp: support case-insensitive
9467 htmlText property (for SWF6).
9468 * testsuite/actionscript.all/TextField.as: fix expected results
9469 (more successes, one failure which only worked by luck before).
9470 * testsuite/anaylse-results.sh: print also unexpected successes.
9472 2007-09-04 Asger Ottar Alstrup <asger@area9.dk>
9474 * server/edit_text_character.cpp: add minimal support for htmlText.
9476 2007-09-04 Chad Musick <chadmusick@msbx.net>
9478 * server/fill_style.cpp,.h: Let fill style know how to read
9479 morph (2) type styles as well, to avoid duplicating lots
9481 * server/styles.cpp,.h: Fill line style know how to read
9482 morph2 tags for the same reason.
9483 * server/impl.cpp: Change MORPHSHAPE2 loader to activate it.
9484 * server/parser/morph2_character_def.cpp: Parse MorphShape2
9485 tags as well as MorphShape.
9486 * server/swf/tag_loaders.cpp: Recognize MorphShape2 tags.
9488 2007-09-04 Sandro Santilli <strk@keybit.net>
9490 * server/vm/ActionExec.{cpp,h}: add an _abortOnUnload flag
9491 for premature abortion of action buffers being executed,
9492 always false for functions and true by default for
9493 global code (overridable by a third optional constructor
9494 argument). Check target for being unloaded (if _abortOnUnload)
9496 * server/vm/ExecutableCode.h (EventCode): set _abortOnUnload
9497 to false when constructing ActionExec for event code.
9498 * testsuite/misc-swfc.all/: movieclip_destruction_test1.sc,
9499 movieclip_destruction_test3.sc: successes with premature
9500 abortion of action buffers.
9502 2007-09-04 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9504 * configure.ac: make kde development package advice
9505 accurate (see bug #20908).
9507 2007-09-04 Sandro Santilli <strk@keybit.net>
9509 * server/dlist.cpp (reset): don't ::unload() again
9510 on already unloaded characters. They might still be
9511 in the list (and not in the removed zone) due to their
9512 having an onUnload handler to be invoked when their parent
9513 was unloaded. Fixes last assertion failure in bug #20949
9516 2007-09-04 Zou Lunkai <zoulunkai@gmail.com>
9518 * testsuite/misc-swfc.all/movieclip_destruction_test{1,3,4}.sc: more tests.
9519 * testsuite/misc-swfc.all/Makefile.am: enable new tests.
9521 2007-09-04 Chad Musick <chadmusick@msbx.net>
9523 * backend/render_handler_tri.cpp: Enabling focal gradient fills on
9524 renderers other than AGG.
9526 2007-09-04 Zou Lunkai <zoulunkai@gmail.com>
9528 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: fix some bogus tests
9529 caused by bogus compiler convertion, and a few more tests, all passed.
9531 2007-09-03 Sandro Santilli <strk@keybit.net>
9533 * server/character.cpp (unload): call queueEventHandler before setting
9535 * server/dlist.cpp (wherever characters are unloaded): call unload() after
9536 removing the character.
9538 2007-09-04 Chad Musick <chadmusick@msbx.net>
9540 * server/font.cpp,.h: Add is_subpixel_font flag for DefineFont3 tag.
9541 * server/text.cpp: Size SWF8, SWF9 fonts correctly -- they use subpixel
9542 shapes, so they need to be scaled when displayed.
9544 2007-09-03 Sandro Santilli <strk@keybit.net>
9546 * server/sprite_instance.cpp (advance_sprite): don't use
9547 DisplayList::advance against DisplayList copies, for which
9548 invariant is not maintained.
9550 2007-09-03 Udo Giacomozzi <udo.gnu@nova-sys.net>
9552 * render_handler_agg_style.h: focal gradients now render correctly
9554 2007-09-03 Sandro Santilli <strk@keybit.net>
9556 * server/sprite_instance.cpp (advance_sprite): don't call
9557 removeUnloaded on DisplayList copies (their ::advance will skip
9558 unloaded elements, anyway).
9559 * server/as_value.cpp (to_sprite): make the dangling reference a
9560 debugging info, not an error.
9562 2007-09-03 Zou Lunkai <zoulunkai@gmail.com>
9564 * server/dlist.cpp: don't abort for unloaded characters in DisplayList::advance().
9565 fixd a case in bug #20076.
9567 2007-09-03 Udo Giacomozzi <udo.gnu@nova-sys.net>
9569 * render_handler_agg_style.h: Some fixes for focal gradients
9571 2007-09-03 Sandro Santilli <strk@keybit.net>
9573 * server/edit_text_character.cpp (unload): don't forget to call
9574 the base class version of the method (properly setting _unload
9577 2007-09-03 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
9579 * doc/C/usermanual/usage/gnashrc.xml: Warn in docs about including
9580 protocols in black- and whitelists.
9582 2007-09-03 Sandro Santilli <strk@keybit.net>
9584 * server/character.h: Add depthInRemovedZone() methods.
9585 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc:
9586 Additional tests, and a typo fix.
9588 2007-09-03 Chad Musick <chadmusick@msbx.net>
9590 * backend/render_handler_agg_style.h Correct(maybe) the placement of the
9591 focal point for focal gradient fills.
9592 * server/fill_style.cpp Read focal gradient fills in the right place
9593 (after gradient records, not before), also added focal gradients to
9594 known bitmap transforms.
9596 2007-09-03 Markus Gothe <nietzsche@lysator.liu.se>
9598 * macros/boost.m4: Commented out bogus check and improved the
9599 checking of BOOST_CFLAGS.
9600 * libbase/tu_types.h: Use boost/cstdint.hpp instead of inttypes.h
9601 * server/vm/action.h: __SGI_LIBC_USING_FROM_STD(va_list)
9602 * gui/gnash.cpp: setlocale() IFF #ENABLE_NLS.
9604 2007-09-03 Chad Musick <chadmusick@msbx.net>
9606 * server/fill_style.h,.cpp -- Add recording of focal point for focal
9608 * backend/render_handler_agg.cpp, backend/render_handler_agg_style.h
9609 Adding gradient focal fill. I'm not sure if I've done this correctly,
9610 but it didn't break anything.
9612 2007-09-02 Chad Musick <chadmusick@msbx.net>
9614 * server/fill_style.cpp -- Update the allow focal gradient fill style,
9615 and to accomodate some format changes for SWF8+ tags. Focal
9616 gradients are not implemented yet -- I don't yet know how to do this.
9617 * server/impl.cpp -- Update DefineShape4 loader function from fixme_loader
9619 * server/styles.h -- Change signature of read function to include the
9620 movie definition since it may be part of a fill style, which needs this.
9621 * server/styles.cpp -- Change read function to read new line styles
9622 allowed in newer SWF files.
9623 * server/parser/shape_character_def.cpp -- Change loader to know how
9624 to read a DefineShape4 tag.
9625 * server/swf/tag_loaders.cpp -- Let the shape_loader be able to load
9628 2007-09-02 Zou Lunkai <zoulunkai@gmail.com>
9630 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc: one more test.
9631 * testsuite/misc-swfc.all/action_execution_order_test10.sc: another testcase
9632 about actions order. If any questions, please add to the wiki.
9633 * testsuite/misc-swfc.all/Makefile.am: enable testcase.
9635 2007-09-01 Sandro Santilli <strk@keybit.net>
9637 * server/as_object.{h,cpp}: handle __proto__ has a normal property.
9638 * server/sprite_instance.cpp (replace_display_object): log an error
9639 if the character to be replaced is not found.
9640 * server/dlist.cpp (replace_character): don't restart the character
9641 being added (fixes a problem with the ::restart function itself, in
9642 that it also cleans up all properties, which now include the
9644 * testsuite/actionscript.all/toString_valueOf.as: more successes.
9645 * testsuite/actionscript.all/Object.as: more successes.
9647 2007-09-01 Markus Gothe <nietzsche@lysator.liu.se>
9649 * macros/boost.m4: push/pop CXXFLAGS/CPPFLAGS.
9650 * libbase/utility.h: Fixed a C++98/C99 incompt. error
9651 * libbase/utility.cpp: Use boost/cstdint.hpp instead of stdint.h.
9652 * libbase/zlib_adapter.cpp: Added 'using namespace gnash;'
9654 2007-09-01 Sandro Santilli <strk@keybit.net>
9656 * server/asobj/Object.cpp (attachObjectInterface): remove
9657 useless call to set_member_flags (init_member does it).
9658 * server/as_object.{cpp,h}: removed dead code (clear)
9660 2007-09-01 Sandro Santilli <strk@keybit.net>
9662 * server/swf_function.cpp (ctor): make sure user-defined
9663 function's initial prototype inherits from Object.
9664 * server/asobj/Object.cpp (getObjectInterface): really
9665 end the inheritance chain (ie: don't override __proto__).
9666 * testsuite/actionscript.all/Inheritance.as: a couple tests
9668 * testsuite/actionscript.all/Object.as: more successes, and
9669 an additional (still failing due to non-proper __proto__ member)
9671 * testsuite/actionscript.all/toString_valueOf.as: one more success.
9673 2007-09-01 Ivor Blockley <meteoryte@yahoo.com.au>
9675 * server/array.cpp: make to_number calls environment-aware.
9676 * testsuite/actionscript.all/array.as: success in invalid array.sort()
9679 2007-09-01 Sandro Santilli <strk@keybit.net>
9681 * server/dlist.{cpp,h}: when unloaded character's unload() method
9682 returns true (character or any of its childs has onUnload methods to
9683 be run) don't really remove it from the list, but just shift it
9684 down to the "removed" zone. Advance and display only non-removed
9685 characters (depth-zone based for now, possibly too weak).
9686 Add lots of paranoid invariant testing (not enough, missing the
9687 one for no unloaded characters out of "removed" depth zone).
9688 * server/character.{cpp,h}: more info about removedDepthOffset,
9689 assertion preveing double unload of a character (this can be
9690 probably easily broken by a focused testcase using removeMovieClip
9691 on a removed but still-reachable character).
9692 * server/movie_root.{cpp,h}: added cleanupDisplayList() method, and
9693 call it at the end of actions execution to properly cleanup removed
9694 but still-reachable characters.
9695 * server/sprite_instance.{cpp,h}: implement a cleanupDisplayList, to
9696 be called by movie_root, make sure to not include unloaded
9697 characters when visiting the DisplayList for bounds extractions and
9699 * testsuite/actionscript.all/MovieClip.as: soft-references successes
9700 * testsuite/misc-ming.all/: loop_test7.c, loop_test8.c:
9701 keep-alive-for-onUnload successes
9702 * testsuite/misc-ming.all/unload_movieclip_test1.c: successes
9703 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc: successes
9704 * testsuite/swfdec/PASSING: remove-depths-*.swf successes
9706 2007-08-31 Sandro Santilli <strk@keybit.net>
9708 * server/asobj/gen-asclass.sh: add the getObjectInterface call.
9709 (btw, gen-asclass.pl is being left behind).
9711 2007-08-31 Sandro Santilli <strk@keybit.net>
9713 * server/as_object.{cpp,h}: changed get_prototype to always return
9714 the actual prototype (rather then returning the Object prototype
9716 * server/: array.cpp, as_function.cpp, edit_text_character.cpp,
9717 sprite_instance.cpp, video_stream_instance.cpp:
9718 Initialize AS class interfaces (prototype) as being subclasses of
9720 * server/asobj/: Boolean.cpp, Camera.cpp, Color.cpp,
9721 ContextMenu.cpp, CustomActions.cpp, Date.cpp, Error.cpp, Key.cpp,
9722 LoadVars.cpp, Microphone.cpp, Mouse.cpp, MovieClipLoader.cpp,
9723 NetConnection.cpp, NetStream.cpp, Number.cpp, Object.cpp,
9724 Selection.cpp, SharedObject.cpp, Sound.cpp, Stage.cpp, System.cpp,
9725 TextSnapshot.cpp, string.cpp, xmlnode.cpp, xmlsocket.cpp
9726 Initialize AS class interfaces (prototype) as being subclasses of
9728 * testsuite/actionscript.all/Global.as: more successes.
9729 * testsuite/actionscript.all/Function.as: one more test for
9730 Function.prototype.__proto__
9731 * testsuite/actionscript.all/MovieClip.as: more tests for
9732 MovieClip.prototype.__proto__
9733 * testsuite/actionscript.all/TextField.as: more tests for
9734 TextField.prototype.__proto__
9735 * testsuite/actionscript.all/Video.as: more tests for
9736 Video.prototype.__proto__
9737 * testsuite/actionscript.all/array.as: more tests for
9738 Array.prototype.__proto__
9739 * testsuite/swfdec/PASSING: successes from latest swfdec
9742 2007-08-31 Sandro Santilli <strk@keybit.net>
9744 * testsuite/actionscript.all/Object.as: add test for
9745 Object.prototype.__proto__ expected to be undefined (bad bug
9747 * server/array.cpp (array_length): handle attempts to set a negative
9748 length as if length=0 was set, and log an AS error.
9749 Still not correct, but saves a memory fill with swfdec testsuite.
9750 * testsuite/actionscript.all/array.as: add test for setting a negative
9753 2007-08-31 Sandro Santilli <strk@keybit.net>
9755 * server/character.cpp (unload): assert the character wasn't already
9757 * macros/boost.m4: don't trash user-defined CXXFLAGS, and don't
9758 provide one if not user-specified initially.
9759 * testsuite/misc-swfc.all/check.sc: ops, last totals() define
9760 was buggy, this one is good.
9762 2007-08-31 Sandro Santilli <strk@keybit.net>
9764 * server/sprite_instance.cpp: removed more dead code.
9765 * server/dlist.cpp (swapDeptsh): don't swap to depths in the
9766 deleted characters zone.
9767 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc:
9768 less failures, few more tests.
9769 * testsuite/misc-swfc.all/Dejagnu.sc: include file:line info
9771 * testsuite/misc-swfc.all/check.sc: define totals().
9773 2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
9775 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: few more tests.
9777 2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
9779 * testsuite/misc-swfc.all/movieclip_destruction_test2.sc: testcase about
9780 movieclip destruction and soft references, more failures.
9781 * testsuite/misc-swfc.all/Makefile.am: enable testcase.
9783 2007-08-31 Zou Lunkai <zoulunkai@gmail.com>
9785 * libbase/image.cpp: don't ommit the default parameter, should fix
9786 the building, please check.
9788 2007-08-30 Sandro Santilli <strk@keybit.net>
9790 * server/dlist.{cpp,h}: drop unused methods and optional args.
9792 2007-08-30 Sandro Santilli <strk@keybit.net>
9794 * server/sprite_instance.{cpp,h}: cleanups:
9795 drop resetDisplayList, _frame0 and replace_if_depth_is_occupied
9796 parameter of add_display_object.
9797 * server/swf/PlaceObject2Tag.cpp: update call to add_display_object
9799 2007-08-30 Sandro Santilli <strk@keybit.net>
9801 * testsuite/misc-ming.all/Makefile.am: don't try to build
9802 DefineEditTextVariableNameTest2-Runner from an non-existent .c
9803 file (fixes 'make dist').
9804 * server/: character.{cpp,h}, edit_text_character.{cpp,h},
9805 sprite_instance.{cpp,h}: change signature of character::unload()
9806 to return a boolean value stating wheter any onUnload event was
9807 queued due to removal.
9809 2007-08-30 Sandro Santilli <strk@keybit.net>
9811 * server/character.h: add const for removed clips depth offset.
9812 * testsuite/actionscript.all/MovieClip.as: test for depth shift when
9813 onUnload method is defined and a clip is removed.
9814 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: expect
9816 * testsuite/actionscript.all/: Makefile.am, AsBroadcaster.as:
9817 new test for AsBroadcaster.
9819 2007-08-30 Zou Lunkai <zoulunkai@gmail.com>
9821 * testsuite/misc-swfc.all/movieclip_destruction_test1.sc: testcase about
9822 movieclip destruction, also action execution order related.
9823 * testsuite/misc-swfc.all/Makefile.am: enable testcase.
9825 2007-08-30 Sandro Santilli <strk@keybit.net>
9827 * server/array.h: document the push method, use some typedefs for
9828 semplicity (iterators).
9829 * server/vm/fn_call.h: add string-returning dump_args().
9831 2007-08-30 Markus Gothe <nietzsche@lysator.liu.se>
9833 * configure.ac, libbase/utility.h, server/asobj/Date.cpp,
9834 backend/render_handler_agg.cpp: Unified trunc() and added
9836 * configure.ac, macros/libexe.m4, macros/kde.m4:
9837 keep bourne-sh, /bin/sh, happy.
9838 * macros/boost.m4: Fixed issue with lib-checking.
9840 2007-08-29 Sandro Santilli <strk@keybit.net>
9842 * testsuite/actionscript.all/: Key.as, Mouse.as, Selection.as,
9843 Stage.as, TextField.as: check elements supposedly created
9844 by implicit call to ASBroadcaster.initialize().
9846 NOTE: for TextField.as also fixed a wrong expected result for
9849 2007-08-29 Sandro Santilli <strk@keybit.net>
9851 * testsuite/MovieTester.cpp (initTestingRenderers): add ARGB32 and
9854 2007-08-29 Udo Giacomozzi <udo.gnu@nova-sys.net>
9856 * configure.ac: added pixel formats ARGB32 and ABGR32; allow "all" value for
9858 * backend/render_handler_agg.cpp: implement the two new pixel formats and
9859 check for the host endianess; some initial changes in AGG cache class which
9860 currently is not used, however
9861 * backend/render_handler_agg.h, gui/fb.cpp: updated comments
9863 2007-08-29 Sandro Santilli <strk@keybit.net>
9865 * server/as_environment.cpp (get_variable): more verbosity in
9868 2007-08-29 Sandro Santilli <strk@keybit.net>
9870 * server/as_value.cpp (to_sprite): use original target, not current
9871 one, for dereferencing danglign MOVIECLIP refs; add TODO item about
9872 the onUnload problem.
9873 * server/sprite_instance.{h,cpp}: add a getOrigTarget() to return original
9874 target of a sprite (the target it got when first constructed, immune
9875 from _name changes).
9876 * testsuite/misc-swfc.all/soft_reference_test1.sc: xcheck => check
9878 2007-08-29 Sandro Santilli <strk@keybit.net>
9880 * testsuite/misc-swfc.all/soft_reference_test1.sc: add some
9881 comments as to why Gnash fails.
9883 2007-08-29 Zou Lunkai <zoulunkai@gmail.com>
9885 * testsuite/misc-swfc.all/soft_reference_test1.sc: new focused
9886 testcase about soft reference, still got an xcheck.
9887 * testsuite/misc-swfc.all/Makefile.am: enable testcase.
9889 2007-08-29 Chad Musick <chadmusick@msbx.net>
9891 * server/asobj/BlurFilter_as.cpp,.h
9892 * server/asobj/ColorMatrixFilter_as.cpp,.h
9893 * server/asobj/ConvolutionFilter_as.cpp,.h
9894 * server/asobj/DropShadowFilter_as.cpp,.h
9895 * server/asobj/GlowFilter_as.cpp,.h
9896 * server/asobj/GradientBevelFilter_as.cpp,.h
9897 * server/asobj/GradientGlowFilter_as.cpp,.h
9898 * server/asobj/BevelFilter_as.cpp,.h
9899 * server/asobj/BitmapFilter_as.cpp,.h
9900 Change to use multiple inheritance for adaptation
9901 * server/BevelFilter.h,.cpp
9902 * server/BlurFilter.h,.cpp
9903 * server/ColorMatrixFilter.h,.cpp
9904 * server/ConvolutionFilter.h,.cpp
9905 * server/DropShadowFilter.h,.cpp
9906 * server/GlowFilter.h,.cpp
9907 * server/GradientBevelFilter.h,.cpp
9908 * server/GradientGlowFilter.h,.cpp
9909 Changing to use multiple inheritance for adaptation
9910 * server/asobj/prophelper.h Update for using multiple inheritance
9911 * server/parser/filter_factory.cpp
9912 Change to use correct type of operator for array pushes.
9914 2007-08-29 Sandro Santilli <strk@keybit.net>
9916 * libbase/utility.h: fix the frnd() function to behave as
9917 intended by original author. Fixed bug #20920.
9919 2007-08-29 Markus Gothe <nietzsche@lysator.liu.se>
9921 * libbase/component_hackery.cpp: Removed crufty file.
9922 * backend/render_handler_agg.cpp: Made trunc() uniform with the
9925 2007-08-29 Sandro Santilli <strk@keybit.net>
9927 * Makefile.am: distribute old ChangeLog files.
9929 2007-08-29 Sandro Santilli <strk@keybit.net>
9931 * server/text.h: fix signature of setFont(font*):
9934 2007-08-28 Sandro Santilli <strk@keybit.net>
9936 * libbase/: image.{cpp,h}, jpeg.{cpp,h}: extend interface
9937 for jpeg creators taking tu_file to specify
9938 ownership of the input stream.
9939 * server/swf/tag_loaders.cpp: substitute calls to
9940 stream::get_underlying_stream with use of a quick&dirty
9941 tu_file adpater using stream underneath.
9942 * server/stream.h: remove get_underlying_stream method.
9944 2007-08-28 Udo Giacomozzi <udo.gnu@nova-sys.net>
9946 * server/stream.h: documented some functions
9948 2007-08-28 Sandro Santilli <strk@keybit.net>
9950 * server/swf/tag_loaders.cpp: remove all bug jpeg-related
9951 calls to stream::get_underlying_stream.
9953 2007-08-28 Udo Giacomozzi <udo.gnu@nova-sys.net>
9955 * server/sprite_instance.cpp: comment unused parameter
9957 2007-08-28 Sandro Santilli <strk@keybit.net>
9959 * libbase/jpeg.{cpp,h}: cleanups, aimed at eventually implement
9960 different inputs then tu_file (stream, buffer).
9962 2007-08-28 Zou Lunkai <zoulunkai@gmail.com>
9964 * testsuite/actionscript.all/case.as: more tests.
9965 * server/swf_function.h: set function args to lower case when needed.
9968 2007-08-28 Sandro Santilli <strk@keybit.net>
9970 * server/: Makefile.am, BitsReader.{cpp,h}: new memory bits reader.
9971 * testsuite/server/: Makefile.am, BitsReaderTest.cpp: unit testing
9972 for the new bits reader.
9974 2007-08-28 Deanna Phillips <deanna>
9976 * libbase/utility.h: define exp2 and log2 if not available
9977 based on HAVE_LOG2 and HAVE_EXP2
9978 * configure.ac: detect availability of log2 and exp2
9980 2007-08-28 Sandro Santilli <strk@keybit.net>
9982 * server/stream.{cpp,h}: inlined align(), cleanups in read_uint().
9984 2007-08-28 Sandro Santilli <strk@keybit.net>
9986 * server/parser/shape_character_def.cpp (read): use ints for twips
9987 values, convert to float only when needed (construction of the
9988 edges and paths). [last patch was bogus]
9990 2007-08-28 Chad Musick <chadmusick@msbx.net>
9992 * server/asobj/BlurFilter_as.cpp,.h
9993 * server/asobj/ColorMatrixFilter_as.cpp,.h
9994 * server/asobj/ConvolutionFilter_as.cpp,.h
9995 * server/asobj/DropShadowFilter_as.cpp,.h
9996 * server/asobj/GlowFilter_as.cpp,.h
9997 * server/asobj/GradientBevelFilter_as.cpp,.h
9998 * server/asobj/GradientGlowFilter_as.cpp,.h
9999 * server/asobj/BevelFilter_as.cpp,.h
10000 * server/asobj/BitmapFilter_as.cpp,.h
10001 Make ActionScript compatible filters
10002 * server/BevelFilter.h,.cpp
10003 * server/BlurFilter.h,.cpp
10004 * server/ColorMatrixFilter.h,.cpp
10005 * server/ConvolutionFilter.h,.cpp
10006 * server/DropShadowFilter.h,.cpp
10007 * server/GlowFilter.h,.cpp
10008 * server/GradientBevelFilter.h,.cpp
10009 * server/GradientGlowFilter.h,.cpp
10010 Changes necessary for adapter compatibility
10011 * server/asobj/prophelper.h
10012 File to make writing AS classes easier using an adapter
10013 * server/asobj/Makefile.am
10016 2007-08-27 Sandro Santilli <strk@keybit.net>
10018 * libbase/utility.h: don't define exp2(), it's going to clash
10019 with existing symbol on most systems (except some BSDen)...
10020 Please provide a better patch for BSD.
10022 2007-08-27 Deanna Phillips <deanna>
10024 * testsuite/misc-ming.all/NetStream-SquareTestRunner.cpp: include
10027 2007-08-27 Sandro Santilli <strk@keybit.net>
10029 * server/parser/shape_character_def.cpp (read): make effective
10030 use of the SHAPE_LOG compile-time macro, by removing any overhead
10031 associated with it, when set to something != 0.
10033 2007-08-27 Sandro Santilli <strk@keybit.net>
10035 * server/parser/shape_character_def.cpp (read): use ints for twips
10036 values, convert to float only when needed (construction of the
10039 2007-08-27 Sandro Santilli <strk@keybit.net>
10041 * server/stream.cpp (read_sint): remove useless assertion.
10043 2007-08-27 Sandro Santilli <strk@keybit.net>
10045 * server/stream.cpp (read_uint): optimize multi-byte reads:
10046 less read_byte(), more read_bytes().
10047 * testsuite/server/StreamTest.cpp: more read_uint() tests.
10049 2007-08-27 Sandro Santilli <strk@keybit.net>
10051 * server/cxform.cpp, server/font.cpp, server/matrix.cpp,
10052 server/stream.h, server/parser/button_character_def.cpp,
10053 server/parser/edit_text_character_def.cpp,
10054 server/parser/filter_factory.cpp,
10055 server/parser/sound_definition.cpp,
10056 server/parser/video_stream_def.cpp,
10057 server/swf/PlaceObject2Tag.cpp, server/swf/tag_loaders.cpp,
10058 utilities/parser.cpp: read_uint(1) => read_bit();
10059 * server/stream.cpp (read_uint): htf_sweet.swf aborts if we
10060 assert bit_count <= 24, so change this base to <= 32 (will
10063 2007-08-27 Sandro Santilli <strk@keybit.net>
10065 * server/stream.{cpp,h}: add read_bit(), optimize read_uint()
10066 a little-bit (there are likely more optimization options).
10067 * server/parser/shape_character_def.cpp (read): use read_bit()
10068 instead of read_uint(1).
10069 * testsuite/server/StreamTest.cpp: more tests for read_bit().
10071 2007-08-27 Markus Gothe <nietzsche@lysator.liu.se>
10073 * libbase/utility.h: defined exp2() as it's missing on some BSDen.
10074 * libbase/math.h OS X has got xF().
10075 * configure.ac check for exp2() and log2().
10077 2007-08-27 Zou Lunkai <zoulunkai@gmail.com>
10079 * testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c,
10080 testsuite/misc-ming.all/Makefile.am: more tests, finished
10081 deduction, testcase now enabled.
10083 2007-08-27 Sandro Santilli <strk@keybit.net>
10085 * testsuite/server/: Makefile.am, StreamTest.cpp:
10086 gnash::stream testing (for now it's just bit streaming, as a tool
10087 for optimization of the read_uint)
10089 2007-08-27 Zou Lunkai <zoulunkai@gmail.com>
10091 * testsuite/actionscript.all/ops.as: more tests about NaN.
10092 * testsuite/actionscript.all/toString_valueOf.as: more tests for deduction.
10094 2007-08-27 Chad Musick <chadmusick@msbx.net>
10096 * server/BevelFilter.cpp,.h: Fuller conversion to AS compatible
10097 * server/BitmapFilter.h: Fuller conversion to AS compatible
10098 * server/stream.cpp: Remove dead code from read_fixed
10099 * server/asobj/Makefile.am Add new files
10100 * server/parser/filter_factory.cpp: Removed typo bug pointed out by
10102 * server/vm/ASHandlers.cpp,.h: Remove use of variable sized array.
10103 * server/asobj/BevelFilter_as.cpp,.h: Adapter pattern object for using
10104 BevelFilter inside of ActionScript (not yet put in global)
10105 * server/asobj/BitmapFilter_as.cpp,.h: Adapater pattern object for
10106 using BitmapFilter inside of ActionScript (not yet put in global)
10108 2007-08-26 Deanna Phillips <deanna>
10110 * doc/gnash.1: Updated.
10112 2007-08-26 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10114 * gui/gtk.cpp, gui/gtksup.h: Add treeview to Movie Properties
10115 ready for InfoTree display.
10117 2007-08-26 Chad Musick <chadmusick@msbx.net>
10119 * server/Makefile.am: Add new files, remove obsolete ones.
10120 * server/BevelFilter.h,.cpp: A Bevel display object filter
10121 * server/BitmapFilter.h: Base class for other filters
10122 * server/BlurFilter.h,.cpp: A Blur display object filter
10123 * server/ColorMatrixFilter.h,.cpp: A color matrix display filter
10124 * server/ConvolutionFilter.h,.cpp: A convolution display filter
10125 * server/DropShadowFilter.h,.cpp: A drop shadow display filter
10126 * server/GlowFilter.h,.cpp: A glow display filter
10127 * server/GradientBevelFilter.h,.cpp: A gradient bevel filter
10128 * server/GradientGlowFilter.h,.cpp: A gradient glow filter
10129 * server/filters.h,.cpp: Removed (split to other files)
10130 * server/stream.h,stream.cpp: Added read_float, read_short_ufixed,
10131 fixed calculation of value in read_short_fixed, added read_ufixed
10132 * server/parser/filter_factory.h,.cpp: parsing code of filters
10133 * server/swf/PlaceObject2Tag.cpp: Changed to use new filters
10135 2007-08-26 Sandro Santilli <strk@keybit.net>
10137 * configure.ac: keep mit-shm enabled by default (use --disable-mit-shm
10139 * doc/C/usermanual/installation/feature_configuration.xml: update
10140 documentation about --disable-mit-shm.
10142 2007-08-26 Lauri Myllari <lauri.myllari@gmail.com>
10144 * gui/gtk_glue_agg.cpp: fix expose events with mit-shm, by
10145 disabling double buffering for _drawing_are
10147 2007-08-26 Sandro Santilli <strk@keybit.net>
10149 * server/asobj/string.cpp (string_split): correctly handle some more
10151 * testsuite/swfdec/PASSING: string-split-empty-*.swf tests succeed.
10152 * testsuite/actionscript.all/String.as: some more testing for
10155 2007-08-25 Sandro Santilli <strk@keybit.net>
10157 * testsuite/actionscript.all/toString_valueOf.as: note that any
10158 function is equal to any other in SWF5...
10159 * testsuite/actionscript.all/ops.as: more tests about isNaN(x) when
10162 2007-08-25 Sandro Santilli <strk@keybit.net>
10164 * server/vm/ASHandlers.cpp (ActionNewLessThan): convert operands to
10165 primitive value before proceeding.
10166 * testsuite/actionscript.all/ops.as: xcheck => check
10168 2007-08-25 Sandro Santilli <strk@keybit.net>
10170 * server/vm/ASHandlers.cpp (ActionNewAdd): convert operands to
10171 primitive value before proceeding.
10172 * server/as_value.h: make to_primitive() public
10173 * server/as_value.cpp (to_number): if valueOf returned a string value
10174 call to_number() again on it; (equals): if one operand is a string
10175 and the other is a number, don't compare unless the string converts
10176 to a non-infinite number.
10177 * testsuite/actionscript.all/Number.as: add test for 'string'
10178 convertion to number returning NaN
10179 * testsuite/actionscript.all/ops.as: xcheck => check
10180 * testsuite/actionscript.all/toString_valueOf.as xcheck => check
10182 2007-08-24 Sandro Santilli <strk@keybit.net>
10184 * server/dlist.{h,cpp} (replace_character): call unload() on replaced
10185 character and document the fact.
10186 * server/as_value.cpp: undefine the MOVIECLIP_AS_SOFTREF macro, tweak
10187 equalSameType() and to_sprite() to use MOVIECLIP targets only when
10189 * testsuite/misc-ming.all/displaylist_depths_test2.c: xcheck => check
10190 (no more failures from this test)
10191 * testsuite/actionscript.all/MovieClip.as: xcheck => check
10192 (soft-references related)
10193 * testsuite/actionscript.all/case.as: xcheck => check (soft refs).
10195 2007-08-24 Miriam Ruiz <little_miry@yahoo.es>
10197 * plugin/klash/klash_part.cpp: Patch for GNASHEXE.
10199 2007-08-24 Sandro Santilli <strk@keybit.net>
10201 * testsuite/actionscript.all/MovieClip.as: more test for
10203 * server/as_value.cpp: fix build when MOVIECLIP_AS_SOFTREF is
10205 * server/swf/PlaceObject2Tag.cpp (loader): remove unused variable.
10206 * server/as_environment.{cpp,h}: use a static const for expressing
10207 number of global registers.
10209 2007-08-24 Sandro Santilli <strk@keybit.net>
10211 * libbase/: tree.hpp => tree.hh: don't change original name of
10212 external source code.
10213 * libbase/Makefile.am: distribute tree.hh
10215 2007-08-24 Sandro Santilli <strk@keybit.net>
10217 * testsuite/actionscript.all/MovieClip.as: test that '_root' and
10218 '_level0' can be accessed as members of a movieclip, while 'this'
10220 * testsuite/actionscript.all/delete.as: add TODO request for testing
10221 variable access by path
10222 * testsuite/actionscript.all/getvariable.as: add test for accessing
10223 slash-based paths starting with 'this'
10224 * server/sprite_instance.cpp (get_member): don't consider 'this' as
10226 * server/as_environment.cpp (find_object_{slash,dot}syntax): handle
10227 paths starting with 'this'.
10229 2007-08-24 Zou Lunkai <zoulunkai@gmail.com>
10231 * testsuite/misc-ming.all/DefineEditTextVariableNameTest2.c: add a new
10232 testcase for EditText variables, not enabled yet, need review.
10234 2007-08-24 Chad Musick <chadmusick@msbx.net>
10236 * server/swf/PlaceObject2Tag.cpp,h: Add support for the
10237 PlaceObject3 tag. This immediately improves some SWF 8
10238 support. The tag still needs to do something with the
10239 filters which it loads.
10240 * server/impl.cpp: Add a loader for PlaceObject3, remove
10241 loaders for DefineShape4, which isn't yet functional.
10243 2007-08-24 Chad Musick <chadmusick@msbx.net>
10245 * server/swf.h: Add FOCAL_GRADIENT to fill styles.
10247 2007-08-24 Chad Musick <chadmusick@msbx.net>
10249 * server/stream.cpp,h: Add read_short_fixed() function for
10250 what short fixed values (16 bits) are needed rather than
10251 long fixed values (32 bits) from the SWF stream.
10253 2007-08-24 Chad Musick <chadmusick@msbx.net>
10255 * server/filters.cpp,h: Effect filters for PlaceObject3 and
10256 for buttons. No current effect, but it parses correctly from SWF.
10257 * Makefile.am: Add the filters files.
10259 2007-08-23 Sandro Santilli <strk@keybit.net>
10261 * server/as_environment.h: document case-sensitiveness of
10263 * server/character.{h,cpp} (get_relative_target_common):
10264 document and fix case-sensitiveness.
10265 * server/vm/ASHandlers.cpp (ActionSetProperty): log a actionscript
10266 error if trying to set the property of an unknown target.
10267 * server/sprite_instance.cpp (get_member, get_relative_target): be
10268 case sensitive/insensitive based on SWF target version.
10269 * testsuite/actionscript.all/case.as: more tests; some unexpected
10270 successes, some unexpected failures.
10272 2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>
10274 * backend/render_handler_agg.cpp: remove need_shape_bounds()
10276 2007-08-23 Sandro Santilli <strk@keybit.net>
10278 * server/parser/shape_character_def.{cpp,h}: document
10279 the read function; compute bound when not available
10280 in the SWF (glyphs in DEFINEFONT*).
10282 2007-08-23 Sandro Santilli <strk@keybit.net>
10284 * libamf/amf.{cpp,h}: fixed a bunch of memory errors, added
10285 some dox, first pass to interface clean ups.
10286 * testsuite/libamf.all/Makefile.am: add testsuite/ to the
10287 include dir, to allow for using our check_equals functions.
10288 * testsuite/libamf.all/: test_object.cpp, test_string.cpp,
10289 test_variable.cpp: fixed new[]/delete mismatches.
10291 2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>
10293 * backend/render_handler_agg.cpp: Initial support for glyphs
10296 2007-08-23 Sandro Santilli <strk@keybit.net>
10298 * testsuite/actionscript.all/case.as: reduce alpha of clips used
10299 for visual checking, to avoid hiding the visual traces; don't
10300 print totals twice.
10302 2007-08-23 Udo Giacomozzi <udo.gnu@nova-sys.net>
10304 * backend/render_handler.h, backend/render_handler_agg.cpp,
10305 backend/render_handler_tri.{cpp,h}, server/edit_text_character.cpp,
10306 server/render.cpp, server/render.h: add parameter "masked" to
10307 draw_poly(), adjust calls to this function and implement (un)masked
10308 polygons in AGG renderer (see bug #20655).
10309 * backend/render_handler_agg.cpp: draw_line_strip() now applies masks
10311 2007-08-23 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10313 * libbase/rc.{cpp,h}: expandPath called on non-POSIX systems
10314 for other path operations. Whitelist and blacklist now space
10315 not colon separated. NOTE: old lists still work, but should
10316 be deprecated. Made private: extractSetting, extractNumber.
10317 Minor code cleanups.
10318 * docs/C/usermanual/usage/gnashrc.xml: add info about black-
10321 2007-08-23 Sandro Santilli <strk@keybit.net>
10323 * configure.ac: move BOOST macro detector invocation after
10324 PTHREAD one, as the former requires the latter.
10326 2007-08-23 Deanna Phillips <deanna>
10328 * macros/pthreads.m4: set pthread flags to -pthread for openbsd.
10329 * libbase/rc.cpp: include unistd.h for getuid()
10331 2007-08-23 Markus Gothe <nietzsche@lysator.liu.se>
10333 * libamf/amf.cpp: memcpy -> strncpy, since it does a memory
10334 access violation on Darwin (and probably other OSes).
10336 2007-08-23 Sandro Santilli <strk@keybit.net>
10338 * testsuite/misc-mtasc.all/Makefile.am: specify input language
10339 in MTASC_CPP, so we can use a filename again (rather then
10340 get meaningless <stdin> printed for __FILE__).
10341 * gui/gui.{cpp,h}: Use kasper's tree class for getMovieInfo
10342 (InfoTable is now an InfoTree)
10343 * gui/gtk.cpp (menuitem_movieinfo_callback): fix to use
10344 an InfoTree - just a leaf-iteration.
10346 2007-08-23 Sandro Santilli <strk@keybit.net>
10348 * libbase/tree.hh: include generic tree class by
10349 Kasper Peeters <kasper.peeters@aei.mpg.de>
10351 2007-08-23 Sandro Santilli <strk@keybit.net>
10353 * testsuite/misc-mtasc.all/exception.as: more tests for
10356 2007-08-22 Sandro Santilli <strk@keybit.net>
10358 * server/swf.h: add version and reference url to
10359 ACTION_TRY and ACTION_THROW
10360 * server/parser/action_buffer.h: add read_uint8() method.
10361 * server/vm/ASHandlers.cpp: stub ACTION_TRY handler
10362 (parsed the tag, doesn't do anything with the info yet).
10363 * testsuite/misc-mtasc.all/exception.as: more tests for
10366 2007-08-22 Sandro Santilli <strk@keybit.net>
10368 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp:
10369 Try another work-around to gcc-4.1.2 bug, commented
10371 * testsuite/actionscript.all/MovieClip.as:
10372 Modify syntax used to test for functions availability
10373 to cope with a bug in Ming < 00040005.
10374 Should fix bug #20867.
10376 2007-08-22 Chad Musick <chadmusick@msbx.net>
10378 * server/font.h, server/font.cpp: Define
10379 m_display_name and m_copyright_name for the
10380 DefineFontName tag (88) of SWF 9, reader
10382 * server/swf.h Add DEFINEFONTNAME tag to list.
10383 * server/impl.cpp Set loader for DefineFontName
10384 * server/swf/tag_loaders.h,.cpp Add loader for
10385 DefineFontName tag.
10387 2007-08-22 Sandro Santilli <strk@keybit.net>
10389 * configure.ac: bail out if kde gui or kparts plugin are
10390 requested but kde/qt deps are not met. Should fix bug
10393 2007-08-22 Sandro Santilli <strk@keybit.net>
10395 * configure.ac: bail out if boost_thread is not set to yes.
10396 * macros/boost.m4: check for boost/thread.hpp. Should fix
10399 2007-08-22 Zou Lunkai <zoulunkai@gmail.com>
10401 * testsuite/misc-ming.all/masks_test2.c,
10402 testsuite/misc-ming.all/masks_test2runner.cpp,
10403 testsuite/misc-ming.all/Makefile.am: new testcase for nested masks.
10405 2007-08-22 Zou Lunkai <zoulunkai@gmail.com>
10407 * server/dlist.cpp, server/sprite_instance.cpp: handle hiden characters
10408 as masks, passed UdoG's test files.
10410 2007-08-22 Chad Musick <chadmusick@msbx.net>
10412 * server/impl.cpp: Add tag loaders (default loaders)
10413 for SWF9 opcodes, plus some older opcodes which were
10416 2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10418 * gui/gtk.cpp: rename View->MovieInfo to View->Properties,
10419 make layout nicer and labels selectable.
10421 2007-08-21 Sandro Santilli <strk@keybit.net>
10423 * libbase/embedVideoDecoderGst.cpp (createDecoder): don't
10424 abort if outputFormat is NONE (renderer missing).
10425 Fixes bug bug #20852.
10427 2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10429 * configure.ac: look for getpwnam
10430 * libbase/rc.cpp (expandPath): don't try to use getpwnam
10431 if not provided by OS.
10433 2007-08-21 Udo Giacomozzi <udo.gnu@nova-sys.net>
10435 * gui/gui.cpp: Introduce FORCE_REDRAW macro
10437 2007-08-21 Sandro Santilli <strk@keybit.net>
10439 * server/text.h: documentation bits for text_glyph_record
10440 * server/edit_text_character.{cpp,h}: Add support for dynamic
10441 wordWrap setting and initial autoSize handling.
10442 * server/parser/edit_text_character_def.h: style & cleanups.
10443 * testsuite/actionscript.all/TextField.as: more successes.
10445 2007-08-21 Chad Musick <chadmusick@msbx.net>
10447 * testsuite/misc-ming.all/DrawingApiTestRunner.cpp
10448 Add a . output to stderr to fix a problem with make check in some
10451 2007-08-21 Udo Giacomozzi <udo.gnu@nova-sys.net>
10453 * backend/render_handler_tri.cpp: fix world_to_pixel() so that OpenGL
10456 2007-08-21 Chad Musick <chadmusick@msbx.net>
10458 * server/swf.h: Add new tag values for SWF 9 support.
10460 2007-08-21 Zou Lunkai <zoulunkai@gmail.com>
10462 * server/dlist.cpp: update display(), for masks, please check.
10464 2007-08-21 Sandro Santilli <strk@keybit.net>
10466 * server/edit_text_character.cpp (add_invalidated_bounds): use
10467 instance bounds, not definition ones; reformat text when _width
10468 or _height changes.
10469 * testsuite/misc-swfc.all/Makefile.am: use an absolute
10470 path for MEDIADIR to make swfc happy; don't do anything
10471 on make check if SWFC is not enabled.
10473 2007-08-21 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10475 * libbase/rc.{cpp,h}: Fixes a typo, matches the whole username if
10476 there's no slash (following POSIX) and makes expandPath
10477 (not expandTilde) private.
10479 2007-08-20 Chad Musick <chadmusick@msbx.net>
10481 * server/vm/ASHandlers.h: Add helper function for multi-byte
10483 * server/vm/ASHandlers.cpp: Implement helper function for multi-
10484 byte strings and implement multi-byte versions of strlen,
10487 2007-08-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10489 * configure.ac: look for the pwd.h header
10490 * doc/C/usermanual/usage/gnashrc.xml: add info about tilde expansion.
10491 * libbase/rc.{cpp,h}: add support for tilde expansion in debugLog
10494 2007-08-20 Sandro Santilli <strk@keybit.net>
10496 * libbase/log.{cpp,h}: print an error on stderr of the debug log file
10497 can not be opened for writing. Minor cleanups (including dox).
10499 2007-08-20 Sandro Santilli <strk@keybit.net>
10501 * server/vm/ExecutableCode.h (FunctionCode::markReachableResources):
10502 Don't mark the function twice, and most importantly don't forget
10503 to mark the target character !!
10505 2007-08-20 Asger Ottar Alstrup <asger@area9.dk>
10507 * testsuite/misc-mtasc.all/: Makefile.am, exception.as:
10508 Test for try/catch (gnash fails).
10510 2007-08-20 Sandro Santilli <strk@keybit.net>
10512 * testsuite/libbase/: TCXXRc.cpp, gnashrc.in:
10513 Test 'set debuglog' directive.
10515 2007-08-20 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10517 * libbase/log.cpp: fix 'set debuglog' directive.
10519 2007-08-19 Sandro Santilli <strk@keybit.net>
10521 * testsuite/actionscript.all/ops.as: test that NaN and undefined are
10522 not less one other.
10523 * server/vm/ASHandlers.cpp (ActionGetVariables): simplify debugging
10526 2007-08-19 Sandro Santilli <strk@keybit.net>
10528 * server/vm/ASHandlers.cpp (CommonGetUrl): check for _level#
10529 loading even when loadTargetFlag is clear.
10530 * server/FreetypeGlyphsProvider.cpp: remove compiler warnings.
10531 * doc/C/usermanual/usage/gnashrc.xml: document
10532 flashVersionString variable.
10534 2007-08-19 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10536 * libbase/rc.{cpp,h}: Avoid string copies in inspectors;
10537 add getFlashVersionString (support for
10538 "set flashVersionString Bla bla bla" in gnashrc).
10539 * server/vm/VM.cpp (getPlayerVersion): Query RcInit for version
10541 * testsuite/libbase/: TCXXRc.cpp, gnashrc.in:
10544 2007-08-19 Markus Gothe <nietzsche@lysator.liu.se>
10546 * testsuite/libbase/Makefile.am,
10547 testsuite/libamf.all/Makefile.am: Added DEJAGNU_CFLAGS.
10549 2007-08-18 Sandro Santilli <strk@keybit.net>
10551 * server/swf/tag_loaders.cpp (define_bits_lossless_2_loader):
10552 ensure bytes, not bits!
10553 * server/vm/ASHandlers.cpp (CommonGetUrl): always check
10554 for URL (security). Give precedence to loadVariable calls
10555 even if target is _level#. Fixes load of uptoten.com.
10556 * plugin/plugin.cpp: Use the environmental variable
10557 GNASH_PLUGIN_DESCRIPTION for the plugin description
10560 2007-08-18 Sandro Santilli <strk@keybit.net>
10562 * server/video_stream_instance.cpp: mark characters created
10563 using new Video as dynamic.
10564 * server/character.h (isDynamic): remove bogus assertion
10565 failing for dynamically-loaded movies.
10567 2007-08-18 Petr Pisar <petr.pisar@atlas.cz>
10569 * po/cs.po: updated to version of 20070804
10571 2007-08-18 Sandro Santilli <strk@keybit.net>
10573 * libbase/log.cpp: change the log_unimpl label to UNIMPLEMENTED.
10574 * server/text.cpp (resolve_font): fix missing return.
10575 * server/parser/text_character_def.cpp: fix compiler warnings.
10577 2007-08-18 Sandro Santilli <strk@keybit.net>
10579 * gui/gui.{cpp,h}: add a getMovieInfo() function as a quick hack
10580 to print movie information.
10581 * gui/: gtk.cpp, gtksup.h: add a View->movieInfo menu item.
10583 2007-08-18 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10585 * configure.ac: define flash player version macros
10586 for compatibility detectors.
10587 * plugin/plugin.cpp: build the flash player version
10588 using provided macros.
10589 * server/vm/VM.cpp: buil flash player version using
10592 2007-08-18 Sandro Santilli <strk@keybit.net>
10594 * server/as_object.h (ensureType): fix printing of *source* type
10596 * macros/firefox.m4: don't substitute GNASHEXE at all, it's not
10599 2007-08-18 Sandro Santilli <strk@keybit.net>
10601 * server/text.{cpp,h}: make text_style class store only the font
10602 pointer, w/out the font_id, provide setFont and getFont
10603 methods, the former always performing a lookup.
10604 * server/parser/text_character_def.cpp (read): use
10605 text_style::setFont() to set the font this properly updates
10606 the actual font pointer in the text_format, fixing bug #20812.
10607 * server/edit_text_character.cpp: use text_style::setFont() to
10608 set font by pointer.
10609 * server/parser/: movie_definition.h, movie_def_impl.{h,cpp},
10610 sprite_definition.h: const-correct get_font() method.
10611 * server/parser/movie_def_impl.{h,cpp}: const-corrected
10612 in_import_table(), made private and re-activated assertion
10613 checking temporarly removed during to GC layout changes.
10615 2007-08-18 Sandro Santilli <strk@keybit.net>
10617 * server/parser/text_character_def.cpp: use symbolic names for
10618 tag types, more verbose parsing.
10620 2007-08-18 Sandro Santilli <strk@keybit.net>
10622 * libbase/jpeg.cpp (jpeg_error_exit): only print SWF errors if
10623 configured to do so; (input_impl): throw an exception if
10624 jpeg_read_header detected errors.
10625 * server/swf/tag_loaders.cpp (jpeg_tables_loader,
10626 define_bits_jpeg_loader): early exception checking to avoid
10627 parser interruption on malformed embedded jpeg.
10629 2007-08-18 Felix Eckhofer <felix@tribut.de>
10631 * plugin/klash/klash_part.cpp: use the -u switch when invoking
10632 the standalone gnash. Fixes youtube playback for konqueror.
10633 Still missing -U and -P switches.
10635 2007-08-18 Sandro Santilli <strk@keybit.net>
10637 * macros/firefox.m4: drop --with-gnashexe and GNASHEXE macro
10638 * plugin/Makefile.am: define GNASHBINDIR based on ${bindir}
10639 * plugin/klash/Makefile.am: define GNASHBINDIR based on ${bindir}
10641 2007-08-17 Sandro Santilli <strk@keybit.net>
10643 * server/sprite_instance.cpp (setVariables):
10644 Convert variable names to lowercase when needed.
10645 * testsuite/misc-ming.all/: Makefile.am, FlashVarsTest.{as,html}:
10646 Test that parameter names are converted to lowercase when target
10649 2007-08-17 Benjamin Wolsey <benjamin_pelican@yahoo.co.uk>
10651 * server/vm/VM.cpp (getPlayerVersion): define FLASH_VERSION as
10652 a compatibility version for use by $version or
10653 System.capabilities.version based version detection kits.
10654 (TODO items added for a cleaner handling of this).
10655 * plugin/plugin.cpp: define FLASH_VERSION as a compatibility version
10656 for use by javascript-based flash version detection kits.
10658 2007-08-17 Zou Lunkai <zoulunkai@gmail.com>
10660 * server/as_function.cpp: initialize '__proto__' instead of 'constructor'.
10661 * testsuite/actionscript.all/Inheritance.as: more passes.
10663 2007-08-17 Alfred M. Szmidt <ams@gnu.org>
10665 * configure.ac: State that a <= 2.4 version of AGG is an error.
10667 2007-08-16 Takashi Iwai <tiwai@suse.de>
10669 * libbase/network.cpp (Network::createServer): fix a bug making
10670 the test for DEFAULTPROTO == "udp" always fail.
10672 2007-08-16 Sandro Santilli <strk@keybit.net>
10674 * server/edit_text_character.{cpp,h}: have a Range2d member to express
10675 current TextField boundary (_width,_height). Implement _width and
10676 _height setters. Add compile-time macro for debugging (still doesn't
10678 * server/gnash.h: add more descriptions, a set() method and TODO items
10679 for the 'point' class.
10680 * testsuite/actionscript.all/TextField.as: more passes.
10682 2007-08-16 Zou Lunkai <zoulunkai@gmail.com>
10684 * testsuite/misc-ming.all/registerClassTest2.c, Makefile.am: new testcase
10685 for Object.registerClass.
10686 * testsuite/misc-ming.all/registerClassTest.c,
10687 testsuite/actionscript.all/Object.as, toString_valueOf.as: testcases review,
10688 minor comments or changes.
10689 * testsuite/actionscript.all/Inheritance.as: more tests. testing for inheritance
10692 2007-08-15 Sandro Santilli <strk@keybit.net>
10694 * testsuite/actionscript.all/TextField.as: a few more tests for
10695 interaction between _width, autoSize and wordWrap (more needed).
10697 2007-08-15 Zou Lunkai <zoulunkai@gmail.com>
10699 * testsuite/actionscript.all/Object.as: more tests and new failures.
10701 2007-08-14 Tomas Groth Christensen <tomasgroth@yahoo.dk>
10703 * backend/sound_handler_sdl.cpp: Also count sounds who stops
10704 because the reached the end. Fixes random eventSoundTest1
10707 2007-08-14 Ivor Blockley <meteoryte@yahoo.com.au>
10709 * server/array.cpp: replace VLAs with std containers.
10711 2007-08-13 Sandro Santilli <strk@keybit.net>
10713 * testsuite/actionscript.all/TextField.as: add more tests for
10714 background, backgroundColor and interaction between _width and
10717 2007-08-13 Zou Lunkai <zoulunkai@gmail.com>
10719 * server/sprite_instance.{h,cpp}: deprecate clone_display_object(), use
10720 duplicateMovieClip() instead.
10721 * testsuite/actionscript.all/ops.as: more tests.
10722 * testsuite/samples/gotoFrameOnKeyEvent-TestRunner.cpp: finish the test runner.
10724 2007-08-12 Sandro Santilli <strk@keybit.net>
10726 * server/edit_text_character.{cpp,h}: add autoSize getter/setter
10728 * testsuite/actionscript.all/TextField.as: add tests for autoSize
10730 * testsuite/misc-ming.all/DefineEditTextTest.c: add TODO items.
10732 2007-08-12 Sandro Santilli <strk@keybit.net>
10734 * server/as_value.h: add is_bool()
10735 * server/edit_text_character.h (getBounds): add TODO item
10736 (I belive is a fix for bug #20760)
10738 2007-08-10 Sandro Santilli <strk@keybit.net>
10740 * backend/sound_handler_sdl.cpp: fix build for MAD media handler.
10741 * server/shape.cpp: remove useless include of hash_wrapper.h
10742 * gui/Makefile.am: fix build of sdl/cairo
10743 * configure.ac: abort if a requested renderer/gui combination
10744 isn't supported (checked for gtk/kde/sdl/fb/fltk)
10746 2007-08-10 Sandro Santilli <strk@keybit.net>
10748 * gui/Makefile.am: typo preventing gtk/cairo combination from building
10749 * server/FreetypeGlyphsProvider.{cpp,h}: add a destructor getting
10750 rid of the resources associated with a face.
10751 * configure.ac: FLTK/OGL isn't supported, while SDL/OGL is !
10752 * testsuite/media/: README, sound1.wav:
10753 Moved sound1.wav data from swfc dir to media dir,
10754 add some info about it and sound1.mp3.
10755 * testsuite/misc-swfc.all/sound.wav: moved to
10757 * testsuite/misc-swfc.all/Makefile.am: define MEDIADIR
10758 * testsuite/misc-swfc.all/check.sc: define a MEDIA
10760 * testsuite/misc-swfc.all/sound.sc: use the MEDIA macro
10761 to find media stuff.
10763 2007-08-10 Sandro Santilli <strk@keybit.net>
10765 * Makefile.am, configure.ac, testsuite/Makefile.am,
10766 testsuite/misc-swfc.all/Makefile.am:
10767 Enable swfc testsuite if 'swfc' is found on the system.
10769 2007-08-10 David Rorex <drorex@gmail.com>
10771 * server/FreetypeGlyphsProvider.cpp: minor change to print the
10772 freetype glyph format in human readable form. patch #6148.
10774 2007-08-10 Sandro Santilli <strk@keybit.net>
10776 * server/vm/ActionExec.{cpp,h}: refactor the check for call stack
10777 depth at end of execution to take depth at *start* of execution
10780 2007-08-10 Sandro Santilli <strk@keybit.net>
10782 * server/vm/ActionExec.cpp (cleanupAfterRun): don't assume the call
10783 stack should be empty at the end of global code execution. Still
10784 print an error as we need further investigation about it. Fixes
10787 2007-08-10 Paul Smedley <paul@smedley.info>
10789 * libbase/URL.cpp, libbase/container.h, libbase/network.cpp,
10790 libbase/network.h, libbase/tu_config.h, libbase/tu_timer.cpp,
10791 server/shm.cpp, server/shm.h, server/vm/ASHandlers.cpp,
10792 utilities/dumpshm.cpp: Build support for OS/2.
10794 2007-08-10 Sandro Santilli <strk@keybit.net>
10796 * server/parser/Timeline.h (getFrameDepths): lock the mutex, as
10797 documented in method description.
10799 2007-08-10 Tomas Groth Christensen <tomasgroth@yahoo.dk>
10801 * backend/sound_handler.h, backend/sound_handler_{sdl,gst}.{h,cpp},
10802 server/swf/tag_loaders.cpp: Introduce the SoundInfo class which
10803 contains the properties of the sound (format, samplerate, etc.).
10804 When parsing a sound-tag the SoundInfo-object is created and
10805 passed to the soundhandler along with the audio data, and the
10806 parser can later ask for the SoundInfo-object for a specific
10807 sound, which is needed when parsing sound-streams.
10809 2007-08-10 Alexander Sack <asac@jwsdot.com>
10811 * backend/Makefile.am, libamf/Makefile.am, libbase/Makefile.am,
10812 libgeometry/Makefile.am, plugin/mozilla-sdk/Makefile.am,
10813 server/Makefile.am: use $pkglibdir for unversioned libs.
10815 2007-08-09 Sandro Santilli <strk@keybit.net>
10817 * server/swf/tag_loaders.cpp (sound_stream_block_loader): don't
10818 discard the first 4 bytes if not reading an MP3. Makes ADPCM
10819 sound better for the feed.swf case (but ADPCM decoder needs
10820 lot more work to be correct)
10822 2007-08-09 Sandro Santilli <strk@keybit.net>
10824 * server/FreetypeGlyphsProvider.cpp (getGlyph): don't abort if
10825 FT_Load_Char doesn't return an outline glyph, rather print
10826 an UNIMPLEMENTED message and the type of glyph you got.
10827 * server/swf/tag_loaders.cpp (ADPCMDecoder::adpcm_expand):
10828 Rather then throwing a ParseException, just print an error
10829 as it's much likely the error is in Gnash parser, rather
10830 then in a malformed SWF, and tests show we do a better
10831 job like that then by stopping the parser.
10832 Also, print an error if the bytesNeeded computation doesn't
10833 match the actual number of bytes read.
10835 2007-08-09 Sandro Santilli <strk@keybit.net>
10837 * server/swf/tag_loaders.cpp: move all ADPCM-related code in an
10838 ADPCMDecoder class.
10839 * README_CVS: minimum version of automake is 1.9.6. 1.7 and 1.8 have
10840 been tried w/out success. Might be a regression, but that is...
10841 * server/button_character_instance.cpp (construct): properly construct
10842 all button child characters. Fixes bug #20729.
10843 * server/swf/tag_loaders.cpp (adpcm_expand): another try at fixing the
10844 needed bytes count for compressed adpcm samples. Also, remove call
10847 2007-08-09 Zou Lunkai <zoulunkai@gmail.com>
10849 * server/character.h: add a constant 'noRatioValue'.
10850 * server/dlist.cpp: In function move_display_object(), don't set ratio
10851 to zero when no ratio value provided by the displaylist tags; In function
10852 reset(), remove all none-referenceable characters.
10853 * server/parser/timeline.h: revert to 1.3, keep strk's design, use std::set
10854 instead of std::map.
10855 * server/parser/movie_def_impl.h, movie_definition.h, sprite_definition.h:
10856 update interface of getTimelineDepths().
10857 * server/parser/morph2_character_def.cpp: set ratio value to zero at rendering
10858 time when no one is provided.
10859 * server/sprite_instance.h: add a member variable is_jumping_back.
10860 * server/sprite_instance.cpp: reimplement add_display_object(); cleanup
10861 goto_frame(); wipe out timeline design 1,2,3; deprecate resetDisplayList();
10862 ready to deprcate 'replace_if_depth_is_occupied '.
10863 * server/swf/placeObject2Tag.cpp: set ratio to character::NoRatioValue instead of
10864 zero when no ratio provided.
10865 * testsuite/misc-ming.all/place_and_remove_object_insane_test.c: xchecks to checks.
10866 should fix bug 20504. All in all, hopefully improved the old timeline design.
10868 2007-08-09 David Rorex <drorex@gmail.com>
10870 * testsuite/misc-swfc.all: new directory for testcases.
10871 * testsuite/misc-swfc.all/check.sc, Dejagnu.sc, sound.sc, hello.sc,
10872 sound.wav, Makefile.am: new test framework by using swfc.