📄 changelog
字号:
* libswfdec/swf.c: * libswfdec/swfdec_audio.c: * libswfdec/swfdec_audio.h: * libswfdec/swfdec_buffer.c: * libswfdec/swfdec_buffer.h: * libswfdec/swfdec_decoder.h: * libswfdec/swfdec_internal.h: * libswfdec/swfdec_render.c: * libswfdec/swfdec_sound.c: Mostly implement an audio mixing subsystem.2005-05-12 David Schleef <ds@schleef.org> * plugin/swfdec-mozilla-player.c: (create_pipeline): Add a colorspace to the pipeline, since a negotiation failure will occur unless the XImage format is exactly the same as swfdec's colorspace.2005-05-08 David Schleef <ds@schleef.org> Fixes for -wsigned-compare, default in gcc-4.0: * configure.ac: reenable -Werror * libswfdec/actions.c: (stack_pop), (stack_show), (stack_show_value): * libswfdec/jpeg/jpeg.c: (jpeg_decoder_decode_entropy_segment): * libswfdec/js/Makefile.am: * libswfdec/js/jsdtoa.c: (ulp), (b2d), (JS_strtod): * libswfdec/js/jsinterp.c: (js_Interpret): * libswfdec/js/jsstr.c: (str_split): * libswfdec/swfdec_actions.h: * libswfdec/swfdec_bits.c: (swfdec_bits_get_string): * libswfdec/swfdec_decoder.h:2005-05-08 David Schleef <ds@schleef.org> * configure.ac: oops, checked in a mistake. * libswfdec/actions_tags.c: (action_define_function_2): fix warning * libswfdec/swfdec_render_cairo.c: (swfdec_render_be_start), (swfdec_render_be_clear), (swfdec_shape_render), (swfdec_text_render): Update to new cairo API. * libswfdec/jpeg/huffman.c: (huffman_table_decode_macroblock): remove random printf * plugin/Makefile.am: Disable plugin building if gstreamer isn't around. Fixes for -wsigned-compare, default in gcc-4.0: * libswfdec/swfdec_decoder.h: fix endianness * pixbuf-loader/io-swf.c: (fill_info): * player/swf_play.c: (main): * plugin/gstappsrc.c: (gst_appsrc_loop): * plugin/swfdec-mozilla-player.c: (found_tags): * test/dump.c: (main):2005-05-06 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions.c: (action_script_call), (swfdec_action_script_execute), (name_object): * libswfdec/actions_builtin.c: (swfdec_init_context_builtins), (action_register_sprite_seg): * libswfdec/actions_tags.c: (action_call_function), (action_call_method): * libswfdec/swfdec_actions.h: - Add new named movieclips as members of their parent movieclip. - Store the root object in the actionscript context, and use that instead of looking it up all the time. - Make name_object public (perhaps needs a better name) and make it recognize _root as well. Use it in registering movieclips as well as stack_show().2005-05-05 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions_tags.c: (action_mb_char_to_ascii), (action_mb_ascii_to_char), (action_get_time), (action_enumerate_2), (action_extends): - Re-add code for MB conversion actions, though it is untested. These were removed with the conversion to js code. - Add warnings in some unimplemented actions, along with the FIXMEs.2005-05-05 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions.c: (action_script_call), (stack_show), (jsval_as_object): * libswfdec/actions_tags.c: (action_define_local), (action_new_object), (action_set_member): - Fix setting of register arguments for Function2s. It was still trying to stack_pop them from before when arguments were made to be passed through argv[]. - Don't pop the set of arguments for an ActionNew twice. - Fix printing of integers in stack_show(). - Increase verbosity of debugging info in ActionDefineLocal and ActionSetProperty.2005-05-05 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions.c: (jsval_as_object): * libswfdec/actions_builtin.c: (mc_getBytesLoaded), (mc_getBytesTotal): * libswfdec/actions_tags.c: (action_call_function), (action_call_method), (action_get_member), (action_new_object), (action_set_member), (action_extends): * libswfdec/swfdec_actions.h: - Add a new jsval_as_object function. This checks if the value is an object and returns it before trying to use JS_ValueToObject. JS_ValueToObject had some strange side effects when being called on objects, and we might not even need to use JS_ValueToObject in handling AS bytecode. Workarounds were happening in the code for specific problems as a result of this already. Leave an INFO message in to see if we ever hit the JS_ValueToObject case. - Add stubs for getBytesLoaded and getBytesTotal, which are called frequently. Returning 0 (undef) for getBytesTotal is likely to lead to divides by zero. - Make CallFunction check for methods in the root object along with global. It's not clear what the scope for functions is from the docs, so we'll have to settle with an accumulated list for now.2005-05-05 David Schleef <ds@schleef.org> * libswfdec/actions_tags.c: (action_call_method): workaround for TAG_C corruption.2005-04-22 David Schleef <ds@schleef.org> * libswfdec/actions.c: (action_script_call), (swfdec_action_script_execute): debug skipped action tags * libswfdec/actions_builtin.c: (mc_attachMovie): properly terminate movieclip_props. * libswfdec/actions_tags.c: (action_goto_frame), (action_call_method): hack fix for goto_frame. Check for bogus argc parameters in call_method. * libswfdec/swf.c: (swfdec_decoder_get_version): Add function. * libswfdec/swfdec.h: same. * libswfdec/swfdec_sprite.c: (swfdec_sprite_render_iterate): Disable code that causes rendering problems. * plugin/gstswfdec.c: (gst_swfdec_loop): create gst tag for codec version. * plugin/swfdec-mozilla-player.c: (main), (create_pipeline), (new_gtk_window), (do_error_message), (timeout), (menu_report_bug), (menu_copy_url), (button_press_event), (expose), (found_tags): Random hacking: clean up error handling, print errors as a label, add "Copy URL" to menu, check codec version (from tag) and complain if it's too high.2005-04-10 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions_builtin.c: (mc_play), (mc_stop): * libswfdec/actions_tags.c: (action_get_variable), (action_get_member), (action_new_object), (action_define_function_2): Hook up named function2s (like original functions), and improve some debugging output while I'm here.2005-04-10 Eric Anholt <anholt@FreeBSD.org> * libswfdec/swfdec_sprite.c: (swfdec_sprite_render_iterate): Logging of frame numbers during render_iterate isn't WARNING material.2005-04-10 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions_builtin.c: (mc_attachMovie), (mc_x_get), (mc_x_set), (mc_y_get), (mc_y_set), (movieclip_find): * libswfdec/swf.c: * libswfdec/swfdec_decoder.h: * libswfdec/swfdec_sprite.c: (swfdec_exports_lookup), (tag_func_export_assets): * libswfdec/swfdec_sprite.h: - Support ExportAssets, which is used in attachMovie to refer to sprites by name. - Fill in MovieClip.attachMovie and add getters/setters for MovieClip._x and _y.2005-04-08 Eric Anholt <anholt@FreeBSD.org> * libswfdec/js/INTEGRATION: * libswfdec/js/jsprf.c: Use G_VA_COPY instead of looking for a define from elsewhere, partially fixing 64-bit builds.2005-04-08 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions.c: (action_script_call), (swfdec_action_script_execute): * libswfdec/actions_builtin.c: (mc_play), (mc_stop), (mc_attachMovie), (movieclip_new), (movieclip_find), (swfdec_init_context_builtins), (action_register_sprite_seg): * libswfdec/actions_tags.c: (action_goto_frame), (action_next_frame), (action_previous_frame), (action_play), (action_stop), (action_call_function), (action_call_method): * libswfdec/js/jslibmath.h: * libswfdec/render.c: (tag_place_object_2): * libswfdec/swf.c: (swfdec_decoder_new), (swfdec_decoder_parse), (swfdec_decoder_free), (swf_parse_header2): * libswfdec/swfdec_actions.h: * libswfdec/swfdec_bits.c: (swfdec_bits_get_string): * libswfdec/swfdec_debug.c: * libswfdec/swfdec_decoder.h: * libswfdec/swfdec_font.c: (tag_func_define_font_2): * libswfdec/swfdec_render.c: (swfdec_render_iterate): * libswfdec/swfdec_sprite.c: (swfdec_sprite_render_iterate), (swfdec_sprite_render), (swfdec_spriteseg_dup), (swfdec_spriteseg_free), (swfdec_spriteseg_place_object_2): * libswfdec/swfdec_sprite.h: - Make a sprite segment to handle the root Timeline, simplifying the swfdec_sprite_render_iterate loop and actionscript code. "stopped" is now set in segments, rather than global render state, and some frame index control has moved there as well. Fix the render_iterate loop for recursion. - Attach a MovieClip instance to all segments, not just ones with PlaceObject2 performed on them with a name. - Handle the "root" variable in actionscripts, mostly. There's a lockroot property of movieclips which affects it, and we don't handle that. - Make the "this" value of global functions and action_script_execute calls be "root" rather than "_global". This is not quite correct, as clipevents (for example) use the movie clip they're associated with, not the root timeline. - Flesh out the MovieClip class a little, providing a play and stop function and a stub attachMovie which is the next to be filled in, most likely. - Eliminate some dead code.2005-04-08 Eric Anholt <anholt@FreeBSD.org> * .cvsignore: * glib-compat/glib/.cvsignore: * libswfdec/js/.cvsignore: * plugin/.cvsignore: Add some more .cvsignore bits.2005-04-07 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions.c: (pc_is_valid): Allow jumps to endpc to handle functions which jump outside themselves in order to return. action_script_call correctly returns when this happens.2005-04-07 Eric Anholt <anholt@FreeBSD.org> * plugin/Makefile.am: Don't attempt to build the plugin or the associated player if WITH_MOZILLA is unset.2005-04-07 David Schleef <ds@schleef.org> * configure.ac: Switch to using GLOBAL_CFLAGS for -Wall and -Werror, so they get propograted everywhere. * gimp-loader/Makefile.am: * glib-compat/glib/Makefile.am: * libswfdec/Makefile.am: * libswfdec/jpeg/Makefile.am: * libswfdec/js/Makefile.am: * libswfdec/mpeg/Makefile.am: * pixbuf-loader/Makefile.am: * player/Makefile.am: * plugin/Makefile.am: * test/Makefile.am:2005-04-07 David Schleef <ds@schleef.org> * libswfdec/swf.c: (tag_func_ignore): Fix segfault.2005-04-07 Eric Anholt <anholt@FreeBSD.org> * libswfdec/actions_tags.c: (action_new_object): Check if the class name of the object looked up during ActionNewObject matches the object's name. If not, then it's probably js_ObjectClass (or is that js_FunctionClass?) and we're dealing with a class that was defined by the script and not a standard one. Since these classes don't get their constructors found by JS_* functions, make a new object and call the constructor ourselves. Also, use the "parent" field properly, I hope.2005-04-05 David Schleef <ds@schleef.org> * configure.ac: disable creating _stdint.h * libswfdec/Makefile.am: set CFLAGS correctly for js * libswfdec/art.c: use glib types * libswfdec/js/Makefile.am: create jsautocfg.h at compile time * libswfdec/js/jsautocfg.h: remove * libswfdec/js/jslibmath.h: disable math code that isn't slurped * libswfdec/swfdec_internal.h: don't include _stdint.h * libswfdec/swfdec_render.c: use glib types2005-04-04 Eric Anholt <anholt@FreeBSD.org> * .cvsignore: * configure.ac: * libswfdec/Makefile.am: * libswfdec/actions.c: * libswfdec/actions_builtin.c: * libswfdec/actions_tags.c: * libswfdec/js/.cvsignore: * libswfdec/js/INTEGRATION: * libswfdec/js/Makefile.am: * libswfdec/js/js.c: * libswfdec/js/js.msg: * libswfdec/js/jsapi.c: * libswfdec/js/jsapi.h: * libswfdec/js/jsarena.c: * libswfdec/js/jsarena.h: * libswfdec/js/jsarray.c: * libswfdec/js/jsarray.h: * libswfdec/js/jsatom.c: * libswfdec/js/jsatom.h: * libswfdec/js/jsautocfg.h: * libswfdec/js/jsbit.h: * libswfdec/js/jsbool.c: * libswfdec/js/jsbool.h: * libswfdec/js/jsclist.h: * libswfdec/js/jscntxt.c: * libswfdec/js/jscntxt.h: * libswfdec/js/jscompat.h: * libswfdec/js/jsconfig.h: * libswfdec/js/jscpucfg.c: * libswfdec/js/jscpucfg.h: * libswfdec/js/jsdate.c: * libswfdec/js/jsdate.h: * libswfdec/js/jsdbgapi.c: * libswfdec/js/jsdbgapi.h: * libswfdec/js/jsdhash.c: * libswfdec/js/jsdhash.h: * libswfdec/js/jsdtoa.c: * libswfdec/js/jsdtoa.h: * libswfdec/js/jsemit.c: * libswfdec/js/jsemit.h: * libswfdec/js/jsexn.c: * libswfdec/js/jsexn.h: * libswfdec/js/jsfile.c: * libswfdec/js/jsfile.h: * libswfdec/js/jsfun.c: * libswfdec/js/jsfun.h: * libswfdec/js/jsgc.c: * libswfdec/js/jsgc.h: * libswfdec/js/jshash.c: * libswfdec/js/jshash.h: * libswfdec/js/jsinterp.c: * libswfdec/js/jsinterp.h: * libswfdec/js/jslibmath.h: * libswfdec/js/jslock.c: * libswfdec/js/jslock.h:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -