2009-01-02 08:50  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Fix spelling.

2009-01-01 20:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Factor our socket creation.

2009-01-01 20:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c, src/npw-viewer.c: Make it
	  possible to disable NPIdentifier cache with
	  NPW_NPRUNTIME_CACHE=no too.

2009-01-01 17:58  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.3.0.

2009-01-01 17:56  Gwenole Beauchesne <gb.public@free.fr>

	* configure, lsb-build/headers/glib-2.0/glib.h,
	  lsb-build/stub_libs/libglib-2.0.c: Add g_hash_table_find() and
	  g_hash_table_remove_all() thunks. Besides, for bi-arch builds,
	  it's assumed that 32-/64-bit glib versions are the same and
	  exports the same functions.

2009-01-01 17:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Add NPIdentifier cache.

2009-01-01 15:13  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c: Add NPClass::HasMethod
	  cache so that to lower RPC round-trip.

2009-01-01 13:54  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Forcibly destroy the Xt source on exit.

2009-01-01 11:02  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS: Updates.

2009-01-01 10:58  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Don't create Xt polling sources if we know the
	  plug-in uses Gtk (XEMBED).

2009-01-01 10:33  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Get rid of the extra 25ms timer. The Xt timers
	  & input sources are now
	  checked in the X events source ::prepare() function.

2009-01-01 07:31  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, NEWS, README, configure, src/cxxabi-compat.cpp,
	  src/debug.c, src/debug.h, src/libxpcom.c, src/npruntime-impl.h,
	  src/npruntime.c, src/npw-common.c, src/npw-common.h,
	  src/npw-config-template.h, src/npw-config.c, src/npw-malloc.c,
	  src/npw-malloc.h, src/npw-player.c, src/npw-rpc.c,
	  src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c, src/rpc.c,
	  src/rpc.h, src/sysdeps.h, src/utils.c, src/utils.h,
	  src/xembed.h, tests/test-rpc-common.c, tests/test-rpc-common.h,
	  tests/test-rpc-concurrent.c, tests/test-rpc-nested-1.c,
	  tests/test-rpc-nested-2.c, tests/test-rpc-types.c,
	  utils/getdeps.sh, utils/mkruntime.sh, utils/repackage.sh: Update
	  copyright notices.

2008-12-29 15:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Fix upgrades from previous versions.

2008-12-29 14:53  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, nspluginwrapper.spec: Rename loader script to
	  npviewer.sh.

2008-12-29 14:52  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-config.c, src/npw-wrapper.c,
	  src/sysdeps.h: Make it possible to use alternate viewer paths
	  with --viewer-paths configure option. By default,
	  pkglibdir/%ARCH%/%OS% is used. If no viewer path includes an
	  ARCH/OS expansion, then nspluginwrapper files are installed in a
	  "flat" hierarchy. NPW_PluginInfo format is now extended to
	  include the viewer_path[] too.

2008-12-29 10:48  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Move down NPW_VIEWER_DIR, after
	  TARGET_ARCH/TARGET_OS were normalised. Also fix uses of
	  normalized ARCH/OS variables.

2008-12-29 09:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Normalize ARCH/OS variables here too.

2008-12-28 18:16  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npw-viewer.sh: Factor out install paths.

2008-12-28 17:18  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Improve biarch-build check.

2008-12-28 17:03  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/rpc.c: Normalize CPU and OS values for
	  both hosts and targets. Cleanup a few internal configure option
	  names. Rephrase --enable-generic.

2008-12-28 11:25  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Make sure NPWindow::ws_info points to a unique
	  location for the lifetime of the window. This fixes support for
	  the VLC plugin that makes a local copy of NPWindow but doesn't
	  bother about making an NPWindow::ws_info copy.

2008-12-28 11:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c, src/npw-malloc.h: Add NPW_MemAllocCopy() and
	  NPW_MemClone() functions.

2008-12-27 15:19  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Minor clean-ups.

2008-12-27 14:56  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Enable main-thread checks by default for all builds
	  from snapshots.

2008-12-27 14:54  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npruntime.c, src/npw-viewer.c: Rework configure
	  option. Use NPW_THREAD_CHECK=yes (or "1") at run-time.

2008-12-27 14:45  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npruntime.c, src/npw-viewer.c: Convert the PID
	  check to a main-thread check.

2008-12-27 12:19  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c: Simplify memory allocation code further.

2008-12-27 12:07  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c: Allow malloc-checks for the libc memory
	  allocation hooks too. This also simplifies/clarifies the
	  different memory allocation backends.

2008-12-27 11:45  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-malloc.c: Enable malloc-checks by
	  default for all builds from snapshots.

2008-12-27 11:16  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npw-malloc.c, src/npw-malloc.h: Add basic malloc
	  check routines to detect possible buffer overflows or
	  underflows. This is enabled at run-time with
	  NPW_MALLOC_CHECK=yes (or "1").

2008-12-26 23:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix NPN_GetStringIdentifiers() to free
	  identifiers with NPW_MemFree().

2008-12-26 23:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix stream_new() to return NULL if an error
	  occurred.

2008-12-26 21:34  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Merge documentation updates from
	  1.2-branch.

2008-12-26 21:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Use NPW_MemAlloc() instead of NPW_MemAlloc0()
	  since all struct members are initialized manually.

2008-12-26 21:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c: Report an error instead of a debug-warning for
	  NPW_MemFree()'ing a pointer that was not allocated with
	  NPW_MemAlloc().

2008-12-25 21:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.h: Merge from 1.2-branch:
	  
	  Fix npw_return_if_fail() definition in !DEBUG mode.

2008-12-25 21:22  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Merge from 1.2-branch:
	  
	  Destroy the plugin window in NPP_Destroy(). NPAPI docs mention
	  plugin shall not use graphics operations beyond that call. So,
	  don't bother with broken plugins, we already have our own bugs
	  to bother with...

2008-12-25 21:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Revert RPC
	  sync and silent X errors commits. They didn't fix anything in a
	  useful way. IOW, don't bother fixing bugs that are not
	  nspluginwrapper related and that could actually degrade its
	  stability.

2008-12-21 12:19  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec, src/npw-wrapper.c: Bump release for
	  development.

2008-12-21 09:32  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Try to
	  improve the RPC flush mechanism. Flash doesn't like "cancelled"
	  NPN_GetURLNotify() with an NPERR_INVALID_INSTANCE_ERROR return.
	  So, we try our best to honour that call prior to sending
	  NPP_Destroy().

2008-12-21 08:19  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Purge all incoming RPC prior to calling
	  NPP_Destroy().

2008-12-21 08:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Don't kill the application on X errors. That
	  is, we ignore all X errors that could arise between the
	  completion of NPP_Destroy() and plugin_instance_finalize(). This
	  is not fully correct as other plugins can be created and then
	  destroyed in the while.
	  
	  XXX: this is a hack to debug later because in the presence of
	  Firefox 3.0 (i.e. neither 3.1b2 nor 2.x are affected, it seems),
	  the toplevel window receives an "unexpected GDK_DESTROY from the
	  outside". Native plugins often get that without nspluginwrapper
	  too but the application is not killed either.

2008-12-20 22:24  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-12-20 22:22  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: 1.2.0.

2008-12-20 21:32  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Suppress error messages in non-verbose mode
	  when exec()'ing npviewer.bin (Stanislav Brabec).

2008-12-20 21:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Remove non-strictly conforming usage of
	  varargs (noticed by Carsten Juttner).

2008-12-16 22:48  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Newer Intel compilers deprecated use of -c99. Rather,
	  they now support the GCC-like option -std=c99.

2008-12-16 22:45  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-nested-2.c: Fix return values.

2008-12-14 22:08  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Drop beta status.

2008-12-14 22:07  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.2.0.

2008-12-14 21:58  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-12-14 21:40  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c: Handle unmasked variants of NPNVariable and
	  NPPVariable.

2008-12-14 21:39  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h, src/npw-viewer.c: Handle NPNVToolkit variable
	  regardless of the C++ ABI mask flag if we implement Gtk2. This
	  fixes Flash Player 10 plugin (built with Sun Studio) execution
	  with a gcc built npviewer.bin since NPNVToolkit has a different
	  value in that case.

2008-12-14 21:22  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Load the SunStudio C++ run-time library on
	  Solaris. This is necessary for the Flash Player 10 plugin.

2008-12-14 20:42  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, nspluginwrapper.spec: No longer ship with obsolete
	  mkruntime script. It was never really used anyway.

2008-12-14 18:09  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix definition of byte array, aka Stun Studio
	  warning fix.

2008-12-14 18:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h: Avoid warning for empty member declaration
	  (Sun Studio), i.e. avoid double-colon.

2008-12-14 18:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Fix incomplete assert(), noticed by David
	  Binderman.

2008-12-14 17:58  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix variable used in comparison.

2008-12-14 17:56  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/npapi.h: Remove extraneous characters.
	* npapi/nptypes.h: Fix build on newer Solaris distributions. bool
	  is defined as a macro by the ISO C standard.

2008-12-14 17:54  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/nspr/prcpucfg.h: Add definitions for Solaris builds with
	  Sun Studio compilers.

2008-12-14 17:53  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Recognize Sun Studio compilers.

2008-12-14 17:26  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-types.c: Fix RPC test with 0 argument.

2008-12-14 10:29  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Implement
	  PluginInstance::invalidate() vfunc. Besides, don't free() the
	  NPP instance in NPP_Destroy() because the plugin may still use
	  it through an NPObject::Invalidate() vfunc for example.

2008-12-14 10:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.c, src/npw-common.h, src/npw-rpc.c: Add
	  NPW_PluginInstance::invalidate() vfunc akin to NPObjects.

2008-12-14 10:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Reset hashes to NULL after they were destroyed.

2008-12-14 09:39  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Allow use of valgrind if NPW_USE_VALGRIND is
	  set to "yes". Use NPW_VALGRIND_OPTIONS to pass additional
	  options to valgrind.

2008-12-14 09:15  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix debug message.

2008-12-13 14:06  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Allow biarch builds on Linux platforms only.

2008-12-13 14:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c: Fix build on FreeBSD (and others) since
	  /proc/self/fd is a Linux-only extension.

2008-12-10 21:10  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Flush the X output buffer while destroying the
	  plugin window. i.e. make sure we have no pending callback that
	  would depend on that dead window.

2008-12-10 20:52  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump version for development.

2008-12-07 22:53  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.1.10 (1.2.0-RC).

2008-12-07 22:44  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-12-07 22:35  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Destroy plugin window only if PluginInstance
	  is finalize'd. This is because an NPPVpluginScriptableNPObject
	  can still hold a reference to it (and a call to
	  NPClass::Invalidate() would fail in that case).

2008-12-07 22:30  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c: Use NPW memory allocator
	  for NPObjectInfo objects. Reference count PluginInstance bound
	  to an NPObject if it is known at NPClass::allocate() time.

2008-12-07 22:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Re-add refcount debugging
	  info for NPN_{Create,Retain,Release}Object().

2008-12-07 21:48  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Remove delayed NPN_InvalidateRect() code as
	  it's no longer necessary with RPC synchronous messaging.

2008-12-07 19:25  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Make NPN_ReleaseObject() use
	  rpc_method_invoke_possible() to check whether we can send it
	  immediately. This detects the case where a call is made after
	  rpc_method_send_reply() but before we return from the
	  rpc_dispatch() handler.

2008-12-07 19:22  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h: Implement synchronous messaging. aka turns
	  an async call (i.e. an rpc_method_invoke() with a connection in
	  server mode) into a synchronous one. That way, the browser is
	  notified that the plugin wants to make a call and then puts self
	  into condition to receive the message (normal rpc_dispatch() or
	  at the end of a toplevel NPP_*() function).
	  
	  This makes it RPC protocol v2.6.

2008-12-07 15:30  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-concurrent.c: Improve concurrent test to check we
	  get the right answers (in case nested handling got wrong).
	  Besides, make sure the client waits for all server's incoming
	  calls prior to rpc_test_exit()'ing.

2008-12-07 15:24  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-common.c: Make sure to handle RPC on both ends,
	  including the client's side.

2008-12-07 08:12  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix NPP_HandleEvent() return value on error.

2008-12-07 08:10  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Add checks
	  for all rpc_method_invoke() functions.

2008-12-07 08:06  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.h: Add npw_return_if_fail() and
	  npw_return_val_if_fail() helpers.

2008-12-07 07:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h, tests/test-rpc-nested-2.c: Add
	  rpc_method_invoke_possible() interface to check whether we are
	  ready to call rpc_method_invoke() or not. i.e. in particular, if
	  we are not trying to invoke functions after
	  rpc_method_send_reply() and before we return from an RPC method
	  handler.

2008-12-06 18:21  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-common.c, tests/test-rpc-concurrent.c,
	  tests/test-rpc-nested-1.c, tests/test-rpc-types.c: Use helpers.
	  In particular, don't use g_assert() but rather RPC_TEST_ENSURE()
	  or RPC_TEST_ENSURE_NO_ERROR() which always evaluate.

2008-12-06 18:13  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, tests/test-rpc-nested-2.c: Add another testcase for
	  nested rpc_method_invoke(). This time, we are also emitting a
	  call just after an rpc_method_send_reply(). Note: this is not
	  fixed yet.

2008-12-06 18:11  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-common.h: Add helpers.

2008-12-06 18:10  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, tests/test-rpc-nested-1.c, tests/test-rpc-nested.c:
	  Rename.

2008-12-06 09:08  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Rework the XEMBED hack. Don't let the browser
	  cause Gtk to kill our window. i.e. don't process WM_DELETE_EVENT
	  sent by the browser GtkSocket. That way, we will kill the window
	  ourselves in NPP_Destroy().

2008-12-04 21:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Process delayed calls in NPP_Destroy() only if
	  PluginInstances match. Besides, don't care about pending
	  NPN_InvalidateRect() requests if we already know the instance
	  will pass away soon (i.e. we are in NPP_Destroy()).

2008-12-03 22:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Delay all NPN_InvalidateRect() messages. An
	  intermediate solution may be to delay the messages only if there
	  is actually incoming RPC. Postpone this optimization for a
	  future version (and smarter strategy to "compress" the
	  region/requests).

2008-12-03 20:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c: Add debug messages for
	  NPClass::invoke_*() functions.

2008-12-02 21:49  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Fix invalid RPC beyond
	  NPP_Destroy(). This fixes the following scenario:
	  
	  Browser: NPP_Destroy()
	  -> rpc_method_invoke()
	  Viewer: NPN_InvalidateRect()
	  -> rpc_method_invoke()
	  -> rpc_dispatch() pending messages
	  -> handle_NPP_Destroy()
	  -> PluginInstance is killed
	  -> send PluginInstance but it was killed...
	  
	  Now, with the help of reference counting, we can hold the
	  PluginInstance. Besides, NPP_Destroy() will reset instance_id,
	  thus RPC won't be sending a "valid" PluginInstance to the other
	  side, thus reducing the other side call to a no-op. i.e. don't
	  try to do anything with the browser NPP instance that was killed
	  previously (the NPP_Destroy() call would have completed by the
	  time the browser-side needs to handle incoming RPC).

2008-12-02 21:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Preserve PluginInstance objects during
	  invoke_NPN_*() function calls. This is because
	  rpc_method_invoke() can handle pending messages, among which an
	  NPP_Destroy() is possible. Since the latter unref the
	  PluginInstance, we could arrive in a situation where we are
	  dereferencing deallocated data.

2008-12-02 20:44  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h, src/npw-viewer.c, src/npw-wrapper.c: Replace
	  all RPC_TYPE_NPP with RPC_TYPE_NPW_PLUGIN_INSTANCE.

2008-12-02 20:15  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h: Add RPC_TYPE_NPW_PLUGIN_INSTANCE
	  to marshal PluginInstance objects.

2008-12-01 23:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Pass PluginInstance to invoke_NP*() functions.
	  The next step is to replace RPC_TYPE_NPP with
	  RPC_TYPE_NPW_PLUGIN_INSTANCE.

2008-12-01 21:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Minor cleanups. Make sure
	  plugin->instance is NULL on exit from NPP_Destroy().

2008-12-01 21:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h: Remove extraneous "extern" linkage keyword,
	  this is default behaviour.

2008-12-01 21:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.c, src/npw-common.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Add infrastructure to refcount PlugInstances.

2008-12-01 20:28  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npruntime.c, src/npw-viewer.c: Disable PID check,
	  this is not really useful unless a plugin does fork() without
	  exec(). This could be reactivated with --enable-pid-check though.

2008-12-01 20:06  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix pid_check() for USE_PID_CHECK == 0 (thanks
	  Martin Stransky).

2008-12-01 20:03  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump release for development.

2008-11-30 23:03  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-11-30 23:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Drop use of "extern inline" as some (older)
	  compilers don't support ISO C semantics.

2008-11-30 22:54  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.1.8.

2008-11-30 22:39  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Process all pending calls in NPP_Destroy() as
	  the data could become junk afterwards.

2008-11-30 22:34  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Don't delay call to NPN_ReleaseObject() if we
	  can handle it now.

2008-11-30 21:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Add rpc_method_*_valist() variants, internal only for
	  now.

2008-11-30 21:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Slightly improved delayed call mechanism. This
	  is not fully satisfying yet as I believe a pipe should be better
	  (glib GSource creation is slow). Fortunately, there doesn't seem
	  to be that many calls to NPN_ReleaseObject().

2008-11-30 21:07  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.h: Fix typo.

2008-11-30 20:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c: Delay calls to
	  NPN_ReleaseObject. Revert:
	  
	  2008-11-22 10:43 Gwenole Beauchesne <gb.public@free.fr>
	  
	  * src/npw-wrapper.c: Fix NPN_ReleaseObject() reply, i.e. don't
	  dereference npobj after the real call to NPN handler as it could
	  be deallocated.

2008-11-30 17:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Add
	  missing debugging messages.

2008-11-30 17:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Fix pid_check() for the browser-side
	  implementation.

2008-11-30 17:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c: Extend PID check to npruntime
	  bridge.

2008-11-30 15:52  Gwenole Beauchesne <gb.public@free.fr>

	* lsb-build/stub_libs/libc_main.c: Add dirfd() for
	  npw_close_all_open_files().

2008-11-30 15:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Check that processes fork()'ed off
	  npviewer.bin don't issue RPC calls. Initial patch by Martin
	  Stransky.

2008-11-30 14:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Rename is_npclass_valid() to
	  is_valid_npobject_class().

2008-11-30 14:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-wrapper.c: Remove wrong comment. The
	  errors previously noticed were due to the fact that NPObjects
	  were looked up in the wrong (previously deallocated) hash table.
	  We now preserve that hash table.

2008-11-30 14:33  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Likewise for npobject_bridge_destroy().

2008-11-30 14:18  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Move id_init() into NP_Initialize(), likewise
	  for id_kill() into NP_Shutdown(). Those functions are guaranteed
	  to be called only once. g_NP_Initialize() and g_NP_Shutdown()
	  could be called several times for the restart machinery but we
	  don't want to clobber with IDs generated previously.

2008-11-30 13:17  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Kill viewer if the parent browser died (Martin
	  Stransky).

2008-11-30 13:08  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-wrapper.c: Use
	  rpc_connection_set_error_callback() to detect and handle an RPC
	  connection loss (Martin Stransky). In that case, all NPObjects
	  are invalidated. XXX: this is too global.

2008-11-30 12:10  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c: Add a mechanism to stop
	  calls to NPClass functions if the other end died. We get
	  notified of this situation through npruntime_deactivate().
	  Initial patch by Martin Stransky.

2008-11-30 11:09  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h: Introduce
	  rpc_connection_set_error_callback() to register a callback for
	  RPC errors (Martin Stransky).

2008-11-30 10:41  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Warn out when we explicitly don't support
	  specific variables for XPCOM in NPN_GetValue() (Martin Stransky).

2008-11-30 09:18  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Add SOCK_CLOEXEC to socket() flags. This is a Linux
	  >= 2.6.27 extension.

2008-11-30 09:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c, src/utils.c, src/utils.h: Close all open
	  files on fork(). Initial patch by Dan Walsh.

2008-11-29 14:49  Gwenole Beauchesne <gb.public@free.fr>

	* utils/npw-shadow.c: Nuke dead file.

2008-11-29 14:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Make it possible to execute native plugins
	  directly (i.e. without npviewer.bin) if either "NPW_DIRECT_EXEC"
	  or "NPW_DIRECT_EXECUTION" environment variable is set.

2008-11-29 14:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c: Fix id_init() to create a new hash if it does not
	  exist already.

2008-11-25 22:11  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Make `which' failures silent for
	  soudwrappers. It's also correct to work without a soundwrapper
	  if the audio device is correctly multiplexed (Stanislav Brabec).

2008-11-25 21:20  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump release for development.

2008-11-24 18:35  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS: Fix typo.

2008-11-23 21:57  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-11-23 06:43  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix a warning (enumeration value not handled
	  in switch).

2008-11-23 06:39  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.1.6.
	* README: Fix typos and mention trademark as there are commercial
	  interests (and be on the safe side).

2008-11-22 15:33  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-11-22 15:20  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Fix string_of_NPVariant() for NULL arguments.

2008-11-22 15:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Release args variants prior to calling
	  rpc_method_send_reply().

2008-11-22 13:49  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c, src/utils.c, src/utils.h:
	  Improve debug info for NP[PN]_[SG]etValue().

2008-11-22 13:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix debug message in NPN_Write().

2008-11-22 10:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix memory leak in NPN_GetStringIdentifiers()
	  RPC handler.

2008-11-22 10:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.h: Add NPW_MemNew() and NPW_MemNew0() helpers.

2008-11-22 10:43  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix NPN_ReleaseObject() reply, i.e. don't
	  dereference npobj after the real call to NPN handler as it could
	  be deallocated.

2008-11-22 10:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.c, src/debug.h, src/npruntime.c, src/npw-viewer.c,
	  src/npw-wrapper.c: Indent debugging messages.

2008-11-22 08:54  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Improve
	  debugging messages. Nested invocations could confuse what the
	  return value actually refers to.

2008-11-22 07:54  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Don't make the sync message a WARNING.

2008-11-22 07:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Always synchronize NPObject::referenceCount in
	  case the plugin wants to inspect that. Synchronization through
	  NPN_RetainObject()/NPN_ReleaseObject() should be enough though.

2008-11-22 07:37  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix plugin window resize in XEMBED hack mode.

2008-11-17 21:55  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Newer demo for the SqueakVM plugin.

2008-11-17 21:40  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Lower priority of RPC
	  handlers.

2008-11-15 21:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix for "javascript:" requests. Don't make
	  them fail because we are starting those streams manually.

2008-11-15 21:45  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h: Fix npw_get_stream_instance().

2008-11-09 17:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Update NPP_Write() comment for negative array
	  lengths.

2008-11-09 16:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Propagate NPP_Write() with negative lengths
	  since the plugin may want to handle that case (e.g. close a
	  stream?). In practise, this doesn't make much sense either.
	  NPAPI specs need to be updated to mean "close the stream" if
	  NPP_WriteReady() returns a negative value.

2008-11-09 16:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, tests/test-rpc-types.c: Actually, since an array of
	  negative size doesn't make sense, let it be the responsibility
	  of the caller to check for bounds.

2008-11-09 16:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, tests/test-rpc-types.c: Size of the array to
	  RPC_TYPE_ARRAY argument is now an int32. Allow for NULL arrays
	  or arrays of negative length. In that case, the returned array
	  pointer in the other size is NULL.

2008-11-09 15:26  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-types.c: Add tests for arrays. Fix
	  rpc_test_signature() for arrays.

2008-11-09 15:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Allow arrays of uint64 or double.

2008-11-09 14:29  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-common.c, tests/test-rpc-common.h,
	  tests/test-rpc-concurrent.c, tests/test-rpc-nested.c,
	  tests/test-rpc-types.c: Fix indentation (8-char tabs, not 4).

2008-11-09 14:18  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Enable glib memory hooks by default if not
	  configuring with --enable-generic.

2008-11-09 14:13  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump version for development.

2008-11-06 22:36  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-11-06 22:28  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, README, nspluginwrapper.spec: Updates for 1.1.4.

2008-11-06 22:06  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Build glib memory hooks only if system glib supports
	  g_slice_alloc().

2008-11-04 23:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-common.c, src/npw-rpc.c,
	  src/npw-wrapper.c: Fix remaining memory leaks in npruntime
	  bridge.
	  
	  The strategy with NPVariants assumes that NPObject methods will
	  preserve the NPVariant value by copying it (e.g. a string) or
	  increasing the refcount of the underlying NPObject. IOW, they
	  don't assume the value is live beyond the call to that method
	  without preserving it.
	  
	  Based on this assumption, we can write the following rules:
	  - Any NPVariant value shall be released if it comes from an
	  rpc_method_get_args(). That's an nspluginwrapper requirement
	  - Any NPVariant result value shall be released when the plugin
	  no longer needs it. That's an NPAPI requirement, implemented by
	  the plugin.
	  
	  Thus, we deal with NPObjects as follows:
	  - Prior to sending an NPObject (in an NPVariant), the browser
	  ref()'s it
	  - After having received an NPObject, the browser ref()'s it i.e.
	  since this is a browser-side object, it's browser side
	  responsibility to ref()' the object.
	  
	  The plugin will unref() the NPObject "naturally" when (i) the
	  NPVariant got from rpc_method_get_args() is released, or (ii)
	  the NPVariant is explicitly unref()'ed per NPAPI specs for
	  NPVariant result values.

2008-11-04 21:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c: Fix copy-paste error.

2008-11-03 23:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Don't try to NPP_Write() erroneous buffers of
	  supposedly negative length.
	  
	  Actually, we can get to that case if NPP_WriteReady() returned
	  -1 or another negative value, in general. Some browsers
	  (Konqueror, Google Chrome) send data through NPP_Write() anyway.
	  Others (Firefox, WebKit) actually suspend the stream temporarily.
	  
	  Note that returning -1 here will destroy the stream. This is
	  compatible with the expected behaviour. e.g. the DiamondX test
	  plugin wants that. Is there any other "real" plugin in that case
	  too?

2008-11-03 22:29  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Use the XEMBED hack (GTK_WINDOW_POPUP toplevel
	  widget instead of GtkPlug) only with Gtk2-based browsers. IOW,
	  this restores the older behaviour for Konqueror as this causes
	  problems there.

2008-11-03 22:20  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Fix NPN_GetValue() with NPNVToolkit.
	  
	  Actually, it was not a problem before because we used to always
	  return NPNVGtk2. However, we now want to detect what toolkit the
	  parent browser is using.

2008-11-02 15:42  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix XEMBED support. Actually, workaround Gtk
	  and Firefox bugs. i.e. don't let them kill the plugin window by
	  killing the old page window without calling either NPP_Destroy()
	  or SetWindow(instance, NULL) first.

2008-11-02 15:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h: Fix npw_get_plugin_instance() for CrossOver
	  Plugin. They make a local copy of the original instance in stack
	  while preserving the same plugin private data (our
	  PluginInstance, fortunately!).

2008-10-29 05:40  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-common.h, src/npw-wrapper.c: Don't
	  claim we support interfaces we currently don't, i.e. NPAPI >=
	  0.18 is not fully implemented yet.

2008-10-29 05:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix NPP_URLNotify() (thanks to Bennet Yee).

2008-10-29 05:18  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.c, src/npw-common.h: Add an NPW_Identifier type
	  useful for implementing local NPIdentifier cache. It's silly to
	  do an RPC round trip simply to retrieve an integer or string
	  value. The NPRuntime caching strategy is not fully settled yet
	  though.

2008-10-29 05:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Create a specific NPUTF8 string marshaler.
	  The difference with normal RPC_TYPE_STRING is the recv()
	  allocates the string with NPN memory allocators.
	  
	  Besides, it's technically possible to pass a NULL argument to
	  the recv() handler and means "I don't care of the data you
	  received. Drop it, thanks". In practise, this is not useful but
	  all marshalers should be safe to NULL arguments and still work
	  afterwards (i.e. do receive data) in that case.

2008-10-29 04:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-malloc.c: Revert to libc free() if we don't have the
	  'Glib' magic in memblock.

2008-10-27 23:22  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Use new memory allocators.

2008-10-27 23:14  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-common.c, src/npw-malloc.c,
	  src/npw-malloc.h: Add memory allocation wrappers over standard
	  libc or glib.

2008-10-27 21:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.c: Remove checks, those functions shall be used
	  only if they are known to be usable in the first place.

2008-10-26 23:07  Gwenole Beauchesne <gb.public@free.fr>

	* TODO: Updates.

2008-10-26 23:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-rpc.c: Use NPN memory allocation
	  routines for NPVariant (NPString).

2008-10-26 22:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Use common instance stuff.

2008-10-26 22:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.h, src/npw-viewer.c, src/npw-wrapper.c: Add
	  common PluginInstance|StreamInstance code.

2008-10-26 22:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-common.c: Add memory allocation wrappers.

2008-10-26 21:36  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npruntime.c, src/npw-common.c, src/npw-common.h,
	  src/npw-viewer.c, src/npw-wrapper.c, src/sysdeps.h: Clean up
	  common code.

2008-10-26 20:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.h: Add very verbose debug mode with filename:line
	  additional specification. Disabled by default, for developers
	  that want to debug things. Note this uses a GNU C extension.

2008-10-26 17:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Cosmetics. Also fix some memory leaks.

2008-10-26 16:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Print returned pointer in NPN_MemAlloc() for
	  debugging.

2008-10-26 16:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c, src/npw-viewer.c,
	  src/npw-wrapper.c: Move NPVariant helpers to npruntime.c. Fix
	  string_of_NPVariant() for NPString. Define
	  NPN_ReleaseVariantValue() and NPN_ReleaseObject() appropriately
	  in both the wrapper and the viewer.

2008-10-26 15:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Allocate an empty string ('') for
	  NPString::utf8length == 0. This is what Firefox does.

2008-10-26 07:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Avoid double object destruction with the Flash
	  Player plugin.

2008-10-25 17:42  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/utils.c, src/utils.h: Add
	  string_of_NPEvent_type() for debug.

2008-10-25 17:36  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix typo for debug.

2008-10-25 17:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/gtk2xtbin.c, src/gtk2xtbin.h: Sync with firefox3 sources.

2008-10-21 21:45  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Check for the X Toolkit correctly (fully).

2008-10-13 19:56  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump version for development.

2008-10-12 16:10  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix make tarball.

2008-10-12 16:07  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-10-12 16:01  Gwenole Beauchesne <gb.public@free.fr>

	* README: Mention the standalone plugins player.

2008-10-12 15:59  Gwenole Beauchesne <gb.public@free.fr>

	* README, src/npw-config.c: Update doc for nspluginwrapper
	  -n|--native flag.

2008-10-12 15:21  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Updates for 1.1.2 release.

2008-10-12 15:19  Gwenole Beauchesne <gb.public@free.fr>

	* README: Flash Player 10 release candidate also works.

2008-10-12 15:05  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-config.c: Add support for Open
	  Solaris (2008.05).

2008-10-12 15:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Fix architecture detection on Solaris/i386.

2008-10-12 15:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Allow wrapping of native plugins through the
	  -n|--native option.

2008-10-12 15:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config-template.h: Try to guess Solaris binaries with
	  .SUNW_version sections.

2008-10-12 13:55  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, utils/install.sh: Add install program.

2008-10-12 08:31  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Fix build on NetBSD 3.1.

2008-10-12 08:22  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/rpc.c: Fix calculation of sockaddr_un length.

2008-10-06 21:55  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/rpc.c: Make it possible to define the maximum of
	  time (in seconds) to wait for the plugin to connect. This can be
	  set both at configure-time (--rpc-init-timeout) or at run-time
	  (NPW_INIT_TIMEOUT) (Initial patch by Geraint North).

2008-10-06 21:25  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Detect ARM (Geraint North).

2008-10-05 21:45  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Revert rev
	  647 (renaming of g_rpc_connection to g_npn_connection).

2008-10-05 21:43  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Handle possible _rpc_dispatch_until() errors in
	  rpc_method_invoke().

2008-10-05 21:39  Gwenole Beauchesne <gb.public@free.fr>

	* TODO, src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c,
	  src/rpc.c, tests/test-rpc-concurrent.c, tests/test-rpc-nested.c,
	  tests/test-rpc-types.c: Rework RPC code to cope with concurrent
	  rpc_method_invoke(). This function is now atomic. That is,
	  method id and its arguments are marshalled in one shot, there is
	  no intermediate wait for MSG_ACK.
	  
	  Notable change also includes the fact that optimization for
	  no-argument or no-return value cases is now gone. i.e. each
	  rpc_method_invoke() shall have an rpc_method_get_args() on the
	  other side, even if there is no arg passed. Besides, each
	  rpc_method_wait_for_reply() shall have an
	  rpc_method_send_reply() on the other side, even if the function
	  normally doesn't return anything.
	  
	  This optimization could be brought back into V3 protocol
	  specification. Current revision is now V2.5.

2008-10-05 21:03  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-common.c: Cleaner exit code path.

2008-10-05 16:32  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-concurrent.c: Error out early for invalid message
	  types.

2008-10-05 16:27  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-rpc-concurrent.c: Default to silent mode and 5000
	  messages.

2008-10-05 16:08  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, tests/test-rpc-common.c, tests/test-rpc-common.h,
	  tests/test-rpc-concurrent.c, tests/test-rpc-nested.c,
	  tests/test-rpc-types.c: Add tests for new RPC implementation.

2008-10-04 13:31  Gwenole Beauchesne <gb.public@free.fr>

	* lsb-build/headers/glib-2.0/glib.h,
	  lsb-build/stub_libs/libglib-2.0.c: Add basic GSlice support
	  thunks.

2008-10-04 13:30  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c, src/utils.h: Add npw_asprintf().

2008-10-04 08:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Rename
	  g_rpc_connection to g_npn_connection.

2008-09-29 22:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c: Fix X visual marshaling (Flash
	  10, initial patch by Martin Stransky).

2008-07-07 19:37  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Bump version for development.

2008-07-06 20:59  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2008-07-06 20:55  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Add libnoxshm.so to filelist.

2008-07-06 20:53  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, README, TODO, nspluginwrapper.spec: Updates for 1.1.0
	  release.

2008-07-06 20:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Add ALLOW_WINDOWLESS_PLUGINS compile-time
	  macro to allow/forbid windowless plugins.

2008-07-06 20:14  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Add LN_S definition for ln -sf command.

2008-07-06 20:09  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPN_InvalidateRect() for Flash Player 10 beta 2.

2008-07-06 19:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Flush the X output buffer so that the call to
	  gdk_pixmap_foreign_new() (and thus XGetGeometry()) can work in
	  the viewer. Otherwise, we sometimes get a BadDrawable.

2008-07-06 19:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix NPNVnetscapeWindow wrapper to create a
	  GdkWindow from it as windowless plugins expect to find a
	  toplevel gdk window (and gtk window TBD).

2008-07-06 19:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Synchronize more NPWindow items in successive
	  NPP_SetWindow() calls, i.e. updates case.
	  create_window_attributes() and destroy_window_attributes() now
	  operate on an NPSetWindowCallbackStruct directly.

2008-07-06 17:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Make sure to commit the pixmap in
	  NPN_HandleEvent() for GraphicsExpose events.

2008-07-06 17:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Add support for windowless plugins.

2008-07-06 14:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPP_HandleEvent().

2008-07-06 14:28  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h: Add missing method and type ids for windowless
	  plugins.

2008-07-06 14:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c: Marshal
	  NPSetWindowCallbackStruct: only reconstruct XVisual based on the
	  visualID we pass-through RPC. This will be useful for windowless
	  plugins support.

2008-07-06 13:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c, src/npw-wrapper.c: Propagate
	  NPNVnetscapeWindow.

2008-07-04 20:57  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c: Propagate
	  NPNVSupportsWindowless.

2008-07-04 20:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPN_SetValue() for boolean variables only.

2008-07-04 20:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Add fix for Mozilla bug #406251:
	  NPVariant.intValue is now a signed int.

2008-07-04 20:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h: Add missing methods for NPN_SetValue(),
	  NPN_Enumerate() and NPN_Construct().

2008-07-04 20:20  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/npapi.h, npapi/npruntime.h, npapi/npupp.h: Update NPAPI
	  headers to 0.19.

2008-07-01 20:38  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix build on platforms that are not biarch devel
	  capable.

2008-06-29 21:17  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Document --enable-strip.

2008-06-26 20:45  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Don't install wrapped root plugins system-wide
	  but stick them to private mozilla plugins dir (typically
	  ~root/.mozilla/plugins/).

2008-06-23 22:08  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Use the underlying g_quark_from_string() to
	  get a unique id from a string. This function is available on
	  older glib version 2.8 (FreeBSD 6.1). Quarks increase from zero.

2008-06-23 21:58  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix install.npplayer dependency. Explicitly link
	  against the pthread library since we are using gthread-2.0
	  (though this one should be linked against pthread by itself on
	  freebsd).

2008-06-23 21:56  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Check for GTK+ for standalone player build too.

2008-06-23 21:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/glibcurl.h: Fix missing include for older (and broken) curl
	  headers.

2008-06-23 21:17  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Always link against libgthread-2.0 (Ruediger Oertel),
	  including for non biarch build case.

2008-06-23 21:11  Gwenole Beauchesne <gb.public@free.fr>

	* src/libnoxshm.c: Fix aliasing problems (Stanislav Brabec).

2008-06-23 21:04  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Don't bother with language and/or timezone during
	  automatic changelog generation.

2008-06-23 21:00  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, README, configure, utils/getdeps.sh,
	  utils/mkruntime.sh, utils/repackage.sh: Update copyright dates.

2008-06-22 08:26  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/libnoxshm.c, src/npw-viewer.sh: Don't allow
	  MIT-SHM (XShm, XVideo) when using QEMU as it causes some
	  endianness issues. Initial patch by Alexander Graf. Note that
	  you may also disable MIT-SHM for other platforms through
	  NPW_USE_XSHM set to no.

2008-06-21 20:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/cxxabi-compat.cpp, src/debug.c, src/debug.h, src/libxpcom.c,
	  src/npruntime-impl.h, src/npruntime.c,
	  src/npw-config-template.h, src/npw-config.c, src/npw-player.c,
	  src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c, src/rpc.c, src/rpc.h, src/sysdeps.h,
	  src/utils.c, src/utils.h, src/xembed.h: Update copyright info.

2008-06-21 16:15  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Don't pretend to support XEMBED if the plugin
	  does not.

2008-06-21 16:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Zero-initialize XtData on allocation.

2008-06-21 16:12  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix support for non XEMBED plugins wrt. to
	  input focus (e.g. Acrobat7).

2008-06-04 20:49  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: In rpc_method_wait_for_reply(), move down arg type
	  extraction from varargs where it starts to be actually useful.

2008-06-04 20:44  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Properly fix parsing for npviewer.bin --info
	  with lengthy stdout.

2008-06-04 20:11  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix for npviewer.bin --info returning lines
	  larger than 255 chars (poor fix).

2008-05-25 15:22  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Handle seekable streams (NP_SEEK) later,
	  currently consider they are not.

2008-05-25 15:10  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix handling of NP_ASFILE and NP_ASFILEONLY
	  streams.

2008-05-25 10:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix NPP_Write() emulation to actually emit the
	  current offset in the stream, not in the buffer being sent.

2008-05-25 10:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Improve initialization of streams, i.e. try to
	  retrieve some information about the remote file (size, last
	  modification time).

2008-05-23 22:34  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix check for size change.

2008-05-23 21:59  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Propagate window resize requests.

2008-05-23 20:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Fix propagation of a stream when it was fully
	  read prior to starting the emission to the other side. e.g. fix
	  advertising in Magic Pen or make Youtube playlists actually work.

2008-05-23 20:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Allow arbitrary title to be set with the
	  --title option.

2008-05-23 20:44  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-player.c: Use <ctrl>-Q or <ctrl>-Escape to quit the
	  application.

2008-05-22 22:56  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, nspluginwrapper.spec, src/glibcurl.c,
	  src/glibcurl.h, src/gtk2xtbin.c, src/gtk2xtbin.h,
	  src/npw-player.c, src/sysdeps.h: Add standalone NPAPI plugins
	  player (Gtk backend only).

2008-05-22 21:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Improve debugging messages for npruntime
	  functions (NPVariant related) and NPP_NewStream().

2008-05-22 20:45  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix NPP_SetWindow() when the platform-specific
	  NPWindow::window member value is NULL. This means the plug-in
	  should not longer use the specified window and must free any
	  resources associated with it. Firefox doesn't do that but WebKit
	  does.

2008-05-22 16:49  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c, src/rpc.c, src/rpc.h: Drop last global
	  variable in RPC code (g_message_descriptors).
	  
	  As a consequence, message descriptors MUST be added to any
	  connection prior to using it. Actually, this now operates like
	  method descriptors. This is an API change that also drops
	  functions to remove methods or message types from a connection.
	  i.e. no need to expose an API that can still change in the
	  future (nspluginwrapper2).

2008-05-22 14:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix propagation of the error code to the other side
	  when a message handler was not found.

2008-05-22 14:29  Gwenole Beauchesne <gb.public@free.fr>

	* TODO, src/rpc.c: Fix passing of array elements to match exactly
	  what is defined in the message descriptor (.size field). i.e.
	  dynamic allocation of the element is delegated to the handler.
	  So, the array can be of static values or pointers to values, it
	  just depends on what the handler does.

2008-05-22 13:53  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Robusty error cases during creation of a connection.

2008-05-22 13:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/rpc.c, src/rpc.h: Fix rpc_connection_ref() to
	  return self.

2008-05-22 12:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h: Add RPC method and datatype IDs for debugging.

2008-05-22 12:34  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.h, src/npw-rpc.h, src/rpc.c, src/rpc.h, src/sysdeps.h,
	  src/utils.h: Add guards for inclusion into C++ code.

2008-05-22 09:09  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Trunk heads to 1.2.0.

2008-05-22 08:03  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure: Rename a few options to --enable-style.
	  Allow stripping of binaries only through --enable-strip.

2007-12-25 11:04  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-12-23 20:01  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npw-viewer.c: Initialize glib for multithreading,
	  aka fix crashes with newer Flash Player plugin (9.0.115).

2007-09-20 21:47  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Fix C99 support flag for Intel compiler.

2007-09-20 21:41  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure: Allow build with XLC.

2007-09-02 06:35  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-09-02 06:34  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Use per-plugin connection references. This
	  will prevent the use of the new (restarted) RPC connection with
	  old NPP instances.

2007-09-02 05:35  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c, src/rpc.c, src/rpc.h:
	  Implement and use rpc_connection_{ref,unref}().

2007-09-01 23:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Improve NPP_WriteReady()
	  and NPP_Write() error handling, aka consume as many bytes as
	  possible when we have an RPC error (for rpc_method_invoke() and
	  rpc_method_wait_for_reply'()).

2007-09-01 22:15  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec, src/npw-wrapper.c: Restart plugins
	  viewer when it crashed (initial patch by Martin Stransky).

2007-09-01 17:58  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix rpc_dispatch() to set error status accordingly,
	  not for simple method IDs. Check connection state prior to
	  marshaling data in rpc_method_*().

2007-09-01 16:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h: Maintain an RPC status (initial patch by
	  Martin Stransky for error handling). Fix rpc_method_send_reply()
	  to return RPC_ERROR_CONNECTION_NULL with NULL connections.

2007-08-26 09:53  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-08-26 06:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Nuke the window border, it's quite disturbing
	  to see it during resizing.

2007-08-25 23:03  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-08-25 22:48  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: 0.9.91.5

2007-08-25 22:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c: Remove NPW_DISABLE_NPRUNTIME,
	  npruntime support has been working for a long time now.
	  Similarly, remove dummy npruntime handlers now that the common
	  supported NPAPI version is passed down.

2007-08-25 22:37  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Pass down common NPAPI
	  version supported by both the browser and nspluginwrapper. We no
	  longer need to check for npruntime support ourselves, rely only
	  on the NPAPI version reported. Yes, if the browser lies we may
	  crash, but that's be browser's fault anyway.

2007-08-25 07:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Implement LONG64 NPP_New() and NPP_Destroy().
	  Fix NPStream functions so that it works with correct 64-bit
	  Konqueror versions too. i.e. check for identify stream.

2007-08-25 07:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix memory leak when we don't want the
	  NPP_Destroy() NPSavedData. Remove useless comment since the
	  feature was implemented.

2007-08-25 06:59  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix NPP_GetValue(NPPVformValue) and call new
	  g_NPN_MemAlloc().

2007-08-24 16:07  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Run-time detect broken 64-bit Konqueror
	  browsers and use another layer of thunks in that case.

2007-08-22 22:26  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* NEWS, nspluginwrapper.spec: Updates.

2007-08-22 22:23  Gwenole Beauchesne <gb.public@free.fr>

	* utils/xtrace.c: Add XCreateWindow() wrapper.

2007-08-22 22:20  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-wrapper.c: Implement NPAPI 0.15
	  FORM_VALUES, i.e. support NPP_GetValue(NPPVformValue,..).

2007-08-22 21:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPAPI 0.16 NPN_PushPopupsEnabledState() and
	  NPN_PopPopupsEnabledState().

2007-08-22 20:43  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/npapi.h, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPAPI 0.17 RESPONSE_HEADERS, i.e. propagate NPStream::headers to
	  the plug-in if it is available (NULL otherwise). Fix NPStream
	  initialization for NPN_NewStream().

2007-08-22 19:23  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix build on Debian 4.0 'Etch' (and derivatives)
	  though libxpcom.so is currently not used and other distributions
	  were capable enough to compile it without the LSB build-env
	  hacks.

2007-08-21 22:12  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix Flash Player 9 Update 3 beta plugin
	  support with XEMBED.

2007-08-21 05:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix a (long) compiler warning.

2007-08-21 05:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Fix a potential buffer overflow.

2007-08-20 21:46  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, configure, src/npw-config-template.h, src/npw-config.c:
	  Add support for 64-bit plugins and fix elf_swap_sym_32() for
	  st_shndx swapping (Martin Stransky).

2007-08-19 22:38  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* Makefile: Make "make changelog" update the ChangeLog only,
	  without committing the result.

2007-08-19 17:30  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: BuildRequires: gtk2-devel everywhere
	  (gtk+2-devel was MDK specific).

2007-08-19 17:24  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: Next release is 0.9.91.5.

2007-08-19 17:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Add
	  NPN_NewStream(), NPN_DestroyStream(), NPN_Write() support. Fix
	  NPP_Write() return value on error.

2007-08-19 09:31  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/npapi.h, npapi/nptypes.h, npapi/npupp.h: NPAPI updates.

2007-08-19 09:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Rewrite protocol to pass
	  cached MIME info and plugin name/description strings. This now
	  is insensitive to possible garbage printed out during the call
	  to the plugin functions.

2007-08-19 08:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Drop initialization/destruction locks since
	  RPC handlers have been called from the Mozilla main loop for a
	  long time now (and not from a separate thread).

2007-08-19 07:44  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Clean-up global NP funcs wrappers.

2007-08-19 06:45  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Override NPPVpluginNeedsXEmbed at a more
	  natural place.

2007-08-18 23:43  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/xembed.h: Fix focus problems (Debian bug
	  #435912).

2007-08-18 23:13  Gwenole Beauchesne <gb.public@free.fr>

	* utils/xtrace.c: Add a few more functions and details.

2007-08-11 10:55  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Add link for Debian bug report #435912.

2007-04-04 06:27  Gwenole Beauchesne <gb.public@free.fr>

	* TODO, src/npw-config.c, src/npw-viewer.sh: Improve fix for
	  "don't load native plugins".

2007-04-03 18:00  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-04-03 17:59  Gwenole Beauchesne <gb.public@free.fr>

	* lsb-build/headers/stddef.h: Fix NULL definition for C (openSUSE
	  patch).

2007-04-03 05:36  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-04-03 05:35  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS: 0.9.91.4.

2007-04-03 05:34  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Add Citrix ICA Client plugin demo page.
	  Need to find a better one.

2007-04-03 05:32  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Move generated RPMs in archivedir (files/ directory).

2007-04-03 05:20  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Handle make distrpm for public RPMs redistribution
	  (--with-generic build).

2007-04-03 05:05  Gwenole Beauchesne <gb.public@free.fr>

	* README, nspluginwrapper.spec: Document --generic-build.

2007-04-02 22:30  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Updates: typos & mention use of anonymous
	  sockets by default.

2007-04-02 21:42  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, configure, lsb-build/stub_libs/libc_main.c,
	  nspluginwrapper.spec: Fix build on Linux systems with SSP
	  enabled by default (e.g. Ubuntu).

2007-04-02 21:05  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Document missing options.

2007-04-02 20:54  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, NEWS, configure, src/npw-config.c: DragonFlyBSD
	  support (Steve O'Hara-Smith).

2007-04-02 20:40  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Prepare for 0.9.91.4.

2007-04-02 20:28  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Handle --with-x11-prefix=* to feed in an X11 base
	  directory.

2007-04-02 20:17  Gwenole Beauchesne <gb.public@free.fr>

	* README: Citrix ICA Client also works (Denny Reeh).

2007-04-02 20:07  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/rpc.c: Use anonymous sockets when building for
	  native Linux only. If building a
	  viewer to be run on a non-Linux system, configure with
	  --generic-build.

2007-04-02 20:02  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, src/npw-config.c, src/npw-viewer.sh: Don't try to wrap
	  native plugins.

2007-04-02 19:50  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, configure: Fix build on NetBSD, including v4-beta (David
	  Brownlee).

2007-03-13 06:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Missing headers (aka NetBSD compile fix).

2007-03-04 16:07  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* NEWS, nspluginwrapper.spec: 0.9.91.3

2007-03-04 16:04  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Force use of a new LD_LIBRARY_PATH that is
	  TARGET specific. Drop the QEMU
	  LD_ASSUME_KERNEL stuff, you are expected to have a thread
	  capable qemu.

2007-03-04 16:01  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, src/npw-viewer.c, src/npw-viewer.sh: Use sound wrappers
	  whenever possible on Linux (Flash Player 9)

2007-03-04 15:02  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, NEWS, configure, src/cxxabi-compat.cpp, src/debug.c,
	  src/debug.h, src/libxpcom.c, src/npruntime-impl.h,
	  src/npruntime.c, src/npw-config.c, src/npw-rpc.c, src/npw-rpc.h,
	  src/npw-viewer.c, src/npw-wrapper.c, src/rpc.c, src/rpc.h,
	  src/sysdeps.h, src/utils.c, src/utils.h, utils/getdeps.sh,
	  utils/mkruntime.sh, utils/repackage.sh: Update copyright years.

2007-03-04 14:58  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, lsb-build/stub_libs/libgcc_s.Version,
	  lsb-build/stub_libs/libgcc_s.c: Fix build on Debian (Rob
	  Andrews).

2007-03-04 14:51  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2007-02-19 14:58  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS: - updates

2007-02-19 14:55  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-viewer.c, src/npw-wrapper.c: Fix
	  marshaling of NPPrint structures, fix marsharling of NPP
	  instance in
	  NPP_Print(), and fix writeback when there is actually nothing to
	  commit.

2007-01-01 16:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Remove the
	  need for NP_Exit(), gtk_main_quit() is called stratight once
	  NP_Shutdown() is done. Net let the plugin shutdown gracefully,
	  then kill
	  it gently to no mercy.

2006-12-29 08:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: If NP_Exit() fails (or event shutdown?), we
	  can assume that the child process
	  is dead or in by mood, so we can kill it.

2006-12-29 00:01  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-28 23:59  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* NEWS, nspluginwrapper.spec: 0.9.92.

2006-12-28 23:53  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix send() in non-blocking mode. Move down test for
	  EINTR since it can also
	  match the (ret == -1 && errno == EINTR) case once rpc_poll()
	  returned.

2006-12-28 18:48  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Fix GSource RPC dispatch to
	  return FALSE only when the other side closed the
	  connection, not on other errors that could block processing of
	  next calls.

2006-12-28 18:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h: Use non-blocking I/O by default so that we
	  can add an RPC_MESSAGE_TIMEOUT to
	  recv(). Besides, if the remote handler returns an error just
	  after an
	  rpc_method_get_args(), the error code is propagated to the other
	  side without
	  delay.

2006-12-28 16:42  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Use ln -sf to override possibly existing files.

2006-12-28 16:41  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Don't check for GTK environment if we are not
	  building the viewer. This helps
	  in reducing the build dependencies for e.g. pkgsrc.

2006-12-28 11:55  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: New 0.9.91.2 snapshot.

2006-12-28 10:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c, src/rpc.c, src/rpc.h:
	  Handle unexpected close of a connection (e.g. npviewer.bin
	  crashed). Let glib
	  remove the polling function on error but only call
	  g_source_destroy() and not
	  g_source_remove_poll() on exit. And, also fix the initialization
	  logic to not
	  initialize the RPC routines if we are not called from
	  NP_Initialize().

2006-12-28 07:50  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c, src/rpc.h: Remove dead code (rpc_connection_busy()).

2006-12-27 10:23  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: 0.9.91.2 snapshot.

2006-12-27 01:00  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, src/npw-viewer.c, src/rpc.c, src/rpc.h: Implement and
	  document RPC protocol version 2.1. This fixes a remaining
	  mis-synchronisation that could happen on occasion upon function
	  termination.
	  i.e. add one more barrier after rpc_method_wait_for_reply().
	  This also
	  renders the delayed method invoke mechanism obsolete. In
	  practise, this
	  fixes <http://www.flashearth.com/>, in particular when rapidly
	  switching
	  image sources (NPN_GetURLNotify(), NPN_PostURLNotify() and
	  NPP_NewStream()
	  were generated in mass and triggered the bug).

2006-12-27 00:46  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-27 00:41  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.h: Include <stdarg.h>.

2006-12-27 00:31  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-27 00:30  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-26 10:45  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-26 10:40  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix make changelog (again).

2006-12-26 10:39  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-26 10:38  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-26 10:36  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-26 10:34  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: 0.9.91.1

2006-12-26 10:33  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.c, src/debug.h, src/utils.c, src/utils.h: Move logging
	  functions to debug.c.

2006-12-25 07:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.c, src/utils.c, src/utils.h: NPW_LOG applies to all
	  outputs, not only the debug ones.

2006-12-25 00:00  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-24 23:58  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* NEWS, README: Updates for new release.

2006-12-24 23:51  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Add Tcl & Squeak plugins demos.

2006-12-24 23:11  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Actually, NPP_NewStream()
	  can alter the notifyData pointer.

2006-12-24 23:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c: Missed migrations to npw_perror().

2006-12-24 18:53  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c: Fix marshaling of NP_NOTIFY_DATA, don't use
	  id_create() from plugin-side as
	  this is a browser-side specific function. Simply pass the
	  notifyData pointer.

2006-12-24 15:59  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Handle notifyData as plugin-side opaque
	  pointers, i.e. browser-side doesn't
	  need to know what they represent so they can be single IDs
	  there. Shorten
	  NPP_NewStream() to have stype as output only (not for input,
	  it's initialized
	  in the plug-in side prior to calling the plugin NPP_NewStream()).

2006-12-24 12:37  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Split RPC / NPAPI level routines.

2006-12-24 11:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Always return a value for
	  NP{P,N}_GetValue().

2006-12-24 11:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix buffered RPC transactions.

2006-12-24 10:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Propagate NPSavedData data
	  to the plugin, though Firefox doesn't handle this.
	  It may work with Mozilla or Konqueror though.

2006-12-24 08:17  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c, src/rpc.c,
	  src/rpc.h, src/utils.c, src/utils.h: Improve error messages.

2006-12-24 07:23  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime.c, src/npw-viewer.c, src/npw-wrapper.c: Mark
	  g_rpc_connection as hidden until it is made PluginInstance
	  specific.

2006-12-24 00:09  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix NPP_New() for null arguments.

2006-12-24 00:08  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.c: Fix marshaling of empty strings (not null).

2006-12-23 19:01  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, src/npw-rpc.c, src/rpc.c: Fix marshaling of arrays of data
	  passed by value (NPIdentifiers for the VLC
	  plug-in). Adjust message descriptors to reflect proper array
	  base type.

2006-12-23 15:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fix NPN_GetStringIdentifiers().

2006-12-23 11:55  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS: Updates.

2006-12-23 08:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: id_init() now returns a boolean value.
	* src/npw-config.c: Fix mkdir -p as NetBSD can generate EISDIR if
	  a directory already exists.

2006-12-23 08:32  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Avoid use of <alloca.h>, thus alloca(). Use
	  ISO C VLA instead.

2006-12-22 08:18  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* src/npw-viewer.c: Delay execution of NPN_PostURL{,Notify}()
	  functions.

2006-12-22 07:56  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.
	* src/npw-wrapper.c: Fix regression in NPN_GetValue(), a NULL
	  instance is allowed.

2006-12-22 07:21  Gwenole Beauchesne <gb.public@free.fr>

	* README: Updates.

2006-12-22 07:05  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl.

2006-12-22 07:02  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Reject Flash Player 9 beta 1.

2006-12-22 06:48  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Allow user to disable npruntime with the
	  NPW_DISABLE_NPRUNTIME env var.

2006-12-22 00:32  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix generation of devel/release svndate in tarball's
	  nspluginwrapper.spec.

2006-12-22 00:12  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Allow for a different installation root with
	  --pkglibdir=ROOT.

2006-12-22 00:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npruntime-impl.h, src/npruntime.c, src/npw-viewer.c,
	  src/npw-wrapper.c: Add dummy npruntime functions for browsers
	  that don't support that API.
	  Always return NPERR_MODULE_LOAD_FAILED_ERROR in NP_Initialize()
	  on error.

2006-12-21 18:47  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Simplify ChangeLog commit string.

2006-12-21 18:43  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl the 21_Dec
	* NEWS, nspluginwrapper.spec: 0.9.91

2006-12-21 18:34  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npruntime-impl.h, src/npruntime.c, src/npw-rpc.c,
	  src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Add
	  npruntime support.

2006-12-21 18:28  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c, src/utils.h: Add ID lookup by value.

2006-12-21 17:56  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Fix NPN_GetValue() to
	  return a value even on error.

2006-12-21 17:42  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c: Fix typo.

2006-12-20 23:36  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix ChangeLog generation (strip off-project path
	  components).

2006-12-20 23:35  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl the 21_Dec

2006-12-20 10:49  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Update for new snapshot.

2006-12-20 10:40  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl the 20_déc
	* Makefile: Add missing files for tarball generation.

2006-12-20 10:28  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, nspluginwrapper.spec, src/npw-config.c:
	  Improve support for development snapshots.

2006-12-20 07:16  Gwenole Beauchesne <gb.public@free.fr>

	* TODO: Add note about communication stream to be flushed on error.
	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPN_RequestRead().

2006-12-20 07:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h: Handle NPByteRange objects.

2006-12-20 07:12  Gwenole Beauchesne <gb.public@free.fr>

	* src/rpc.h: Add RPC_ERROR_MESSAGE_ARGUMENT_INVALID.

2006-12-19 08:47  Gwenole Beauchesne <gb.public@free.fr>

	* src/debug.c, src/npw-rpc.c, src/npw-viewer.c: Use the new
	  rpc_method_invoke_delayed() method.

2006-12-19 08:46  Gwenole Beauchesne <gb.public@free.fr>

	* TODO, src/rpc.c, src/rpc.h: Add a means to delay calls until
	  incoming requests are processed.

2006-12-19 08:41  Gwenole Beauchesne <gb.public@free.fr>

	* src/sysdeps.h: Fix NPW_COMPONENT_NAME definitions.

2006-12-18 10:33  Gwenole Beauchesne <gb.public@free.fr>

	* npapi/nspr/prcpucfg.h: Fix ppc64 host support (32-bit types were
	  mis-defined).

2006-12-18 08:01  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/cxxabi-compat.cpp, src/npw-viewer.c:
	  Merge more complete libg++ compat code from Mozilla
	  (__pure_virtual).

2006-12-17 21:56  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/rpc.c, src/rpc.h: Add support for 64-bit integers
	  and double values.

2006-12-17 17:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Use new NPP and NPStream
	  marshalers. Use NPERR_OUT_OF_MEMORY_ERROR where
	  necessary instead of RPC_ERROR_NO_MEMORY. Use a single
	  instance_id for NPP
	  instances, but note their IDs are allocated in the browser-side
	  only.

2006-12-17 16:58  Gwenole Beauchesne <gb.public@free.fr>

	* src/utils.c, src/utils.h: Re-work ID accessors to match
	  GHashTable ones better.

2006-12-17 16:54  Gwenole Beauchesne <gb.public@free.fr>

	* TODO: Updates.

2006-12-17 16:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h: Marshal NPP instances & NPStream
	  objects, based on their generated ID.

2006-12-17 16:34  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/sysdeps.h: Define specific
	  BUILD_{XPCOM,WRAPPER,VIEWER} macros.

2006-12-15 16:54  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: Generated by svn2cl the 15_déc

2006-12-15 16:52  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Create user Mozilla plugin dir if it doesn't
	  exist yet.

2006-12-15 10:41  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Fix bi-arch build on ppc64.

2006-12-15 10:23  Gwenole Beauchesne <gb.public@free.fr>

	* configure: Fix ppc64 / ppc32 support.

2006-12-15 10:14  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Force ELF_CLASS redefinition.

2006-12-13 09:52  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Add tests for mplayer plug-in.

2006-12-13 09:51  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/libxpcom.c: Add dummy XPCOM library.

2006-12-12 23:41  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Add XEMBED support.

2006-12-11 23:43  Gwenole Beauchesne <gb.public@free.fr>

	* tests/test-plugins.html: Add VRML Samples page.

2006-11-30 00:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Initial fix for focus problems.

2006-11-29 22:24  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Allocate a PlugInstance to hold private data
	  in the wrapper plugin too.

2006-11-27 22:40  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.sh: Expand PATH for RealPlayer package on NetBSD
	  (reaplay executable).

2006-11-27 22:39  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-config.c: NetBSD 3.1 host support.
	  Auto-detect Linux/i386 plugins installed there.

2006-11-27 10:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c, src/sysdeps.h: Don't try to update old-style
	  npwrapper.so plugin.

2006-11-27 07:00  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Improve plugin description.

2006-11-27 06:54  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Print help if plugin path is not specified.

2006-11-27 06:44  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Only skip target ARCH that is not available,
	  don't pair it with target OS. Also
	  skip viewers that match host OS/ARCH pairs.

2006-11-27 00:11  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Drop runtime subpackage. Update for 0.9.91
	  (ABI change).

2006-11-27 00:10  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-config.c: Lowercase OS defines.

2006-11-26 23:49  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, src/npw-config.c, src/npw-viewer.sh,
	  src/npw-wrapper.c, src/sysdeps.h: Move files to
	  NPW_LIBDIR/ARCH/OS directory where appropriate. This is necessary
	  to differentiate the viewers per ARCH/OS as there is no reliable
	  way to detect
	  an ELF object is for a specific OS (is e_ident[EI_OSABI] is not
	  filled in).
	  i.e. is_compatible_plugin() will actually execute npviewer
	  --test. Also fix
	  wrapped plugin installation so that it doesn't generate empty
	  files on failure.

2006-11-26 17:26  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c: Improve arguments handling,
	  this should fix processing of GTK arguments.

2006-11-25 15:52  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npw-config.c: Fix build on Linux.

2006-11-25 15:40  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npw-config.c: Auto-detect Linux plugins on
	  FreeBSD platforms.

2006-11-25 12:51  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure: Only build the viewer on Linux platforms.

2006-11-25 10:38  Gwenole Beauchesne <gb.public@free.fr>

	* src/sysdeps.h: Define _XOPEN_SOURCE to 600 to use POSIX
	  1003.1-2001 (with C99 elements)

2006-11-25 10:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Embed necessary ELF definitions.

2006-11-25 09:55  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure: Detect X11 base dir, -ldl is a Linux
	  specific library.

2006-11-25 09:51  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: strcasecmp() is in <strings.h>

2006-11-19 23:28  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-config.c: Re-add 64-bit plugin paths, they are necessary
	  to get correct upgrades.
	  FIXME: probably split into "host" and "target" plugin dirs?

2006-11-19 23:08  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: Fix biarch/no-biarch builds.

2006-11-19 23:04  Gwenole Beauchesne <gb.public@free.fr>

	* configure, nspluginwrapper.spec: Default to biarch builds on
	  x86-64. Make sure to report prerelease versions
	  so that to have a different version tag for upgrades to work.

2006-11-19 22:58  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Update project URL.

2006-11-19 22:34  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, lsb-build/stub_libs/libc_nonshared.c,
	  src/sysdeps.h: Add checks for
	  __attribute__((visibility("hidden"))) and .{init,fini}_array
	  support.

2006-11-19 22:32  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: Make changelog. Clean lsb-build objdir. Cleanups.

2006-11-19 17:43  Gwenole Beauchesne <gb.public@free.fr>

	* README: Document simplified build on x86-64 (LSB Desktop stubs).

2006-11-19 17:24  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npw-config.c: Update SUSE firefox paths. Add
	  Debian/Ubuntu and Gentoo plugins path. Remove
	  lib64 paths from mozilla since it's unlikely we need to wrap
	  64-bit plugins.

2006-11-19 15:17  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, lsb-build, lsb-build/headers,
	  lsb-build/headers/atk-1.0, lsb-build/headers/atk-1.0/atk,
	  lsb-build/headers/atk-1.0/atk/atk-enum-types.h,
	  lsb-build/headers/atk-1.0/atk/atk.h,
	  lsb-build/headers/core_filelist,
	  lsb-build/headers/desktop_filelist, lsb-build/headers/dlfcn.h,
	  lsb-build/headers/errno.h, lsb-build/headers/fcntl.h,
	  lsb-build/headers/fontconfig,
	  lsb-build/headers/fontconfig/fcfreetype.h,
	  lsb-build/headers/fontconfig/fcprivate.h,
	  lsb-build/headers/fontconfig/fontconfig.h,
	  lsb-build/headers/glib-2.0, lsb-build/headers/glib-2.0/glib,
	  lsb-build/headers/glib-2.0/glib-object.h,
	  lsb-build/headers/glib-2.0/glib.h,
	  lsb-build/headers/glib-2.0/glib/gprintf.h,
	  lsb-build/headers/glib-2.0/glib/gstdio.h,
	  lsb-build/headers/glib-2.0/gmodule.h,
	  lsb-build/headers/glib-2.0/gobject,
	  lsb-build/headers/glib-2.0/gobject/gvaluecollector.h,
	  lsb-build/headers/gtk-2.0, lsb-build/headers/gtk-2.0/gdk,
	  lsb-build/headers/gtk-2.0/gdk-pixbuf,
	  lsb-build/headers/gtk-2.0/gdk-pixbuf-xlib,
	  lsb-build/headers/gtk-2.0/gdk-pixbuf-xlib/gdk-pixbuf-xlib.h,
	  lsb-build/headers/gtk-2.0/gdk-pixbuf/gdk-pixbuf.h,
	  lsb-build/headers/gtk-2.0/gdk-pixbuf/gdk-pixdata.h,
	  lsb-build/headers/gtk-2.0/gdk/gdk.h,
	  lsb-build/headers/gtk-2.0/gdk/gdkkeysyms.h,
	  lsb-build/headers/gtk-2.0/gdk/gdkx.h,
	  lsb-build/headers/gtk-2.0/gtk,
	  lsb-build/headers/gtk-2.0/gtk/gtk.h, lsb-build/headers/limits.h,
	  lsb-build/headers/pango-1.0, lsb-build/headers/pango-1.0/pango,
	  lsb-build/headers/pango-1.0/pango/pango-utils.h,
	  lsb-build/headers/pango-1.0/pango/pango.h,
	  lsb-build/headers/pango-1.0/pango/pangofc-decoder.h,
	  lsb-build/headers/pango-1.0/pango/pangofc-fontmap.h,
	  lsb-build/headers/pango-1.0/pango/pangoft2.h,
	  lsb-build/headers/pango-1.0/pango/pangoxft.h,
	  lsb-build/headers/stddef.h, lsb-build/headers/stdio.h,
	  lsb-build/headers/stdlib.h, lsb-build/headers/string.h,
	  lsb-build/headers/sys, lsb-build/headers/sys/resource.h,
	  lsb-build/headers/sys/select.h, lsb-build/headers/sys/time.h,
	  lsb-build/headers/sys/types.h, lsb-build/headers/sys/wait.h,
	  lsb-build/headers/time.h, lsb-build/headers/unistd.h,
	  lsb-build/headers/wctype.h, lsb-build/stub_libs,
	  lsb-build/stub_libs/LibNameMap.txt,
	  lsb-build/stub_libs/core_filelist,
	  lsb-build/stub_libs/core_static_filelist,
	  lsb-build/stub_libs/desktop_filelist,
	  lsb-build/stub_libs/libX11.Version,
	  lsb-build/stub_libs/libX11.c,
	  lsb-build/stub_libs/libXext.Version,
	  lsb-build/stub_libs/libXext.c,
	  lsb-build/stub_libs/libXt.Version, lsb-build/stub_libs/libXt.c,
	  lsb-build/stub_libs/libc_main.Version,
	  lsb-build/stub_libs/libc_main.c,
	  lsb-build/stub_libs/libc_nonshared.c,
	  lsb-build/stub_libs/libdl.Version, lsb-build/stub_libs/libdl.c,
	  lsb-build/stub_libs/libgcc_s.Version,
	  lsb-build/stub_libs/libgcc_s.c,
	  lsb-build/stub_libs/libgdk-x11-2.0.Version,
	  lsb-build/stub_libs/libgdk-x11-2.0.c,
	  lsb-build/stub_libs/libglib-2.0.Version,
	  lsb-build/stub_libs/libglib-2.0.c,
	  lsb-build/stub_libs/libgobject-2.0.Version,
	  lsb-build/stub_libs/libgobject-2.0.c,
	  lsb-build/stub_libs/libgthread-2.0.Version,
	  lsb-build/stub_libs/libgthread-2.0.c,
	  lsb-build/stub_libs/libgtk-x11-2.0.Version,
	  lsb-build/stub_libs/libgtk-x11-2.0.c,
	  lsb-build/stub_libs/libpthread.Version,
	  lsb-build/stub_libs/libpthread.c, src/utils.c: Import (minimal)
	  LSB Desktop build environment so that to help non-multiarch
	  capable x86-64 distributions to build the 32-bit viewer.

2006-11-17 16:47  Gwenole Beauchesne <gb.public@free.fr>

	* configure, src/npw-config.c, src/sysdeps.h: bswap_*() functions
	  were only used in npw-config.c

2006-11-17 15:41  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog: updates

2006-11-17 15:40  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec: 0.9.90.4

2006-11-17 15:38  Gwenole Beauchesne <gb.public@free.fr>

	* README: Document --with-biarch, minor updates.

2006-11-17 09:58  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: update to use %_with_biarch directly

2006-11-17 08:01  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c, src/npw-wrapper.c, src/utils.c, src/utils.h:
	  Use optimized hash tables from GLib.

2006-11-16 06:07  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Only print message with dimensions are still
	  null...

2006-11-15 12:52  Gwenole Beauchesne <gb.public@free.fr>

	* ChangeLog, Makefile: Add missing files for tarball generation.
	* NEWS, nspluginwrapper.spec: 0.9.90.4

2006-11-15 11:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Fixup NPWindow size hints. Flash Player
	  doesn't like null dimensions and
	  Konqueror is actually passing that through
	  NPP_SetWindow()->NPWindow.

2006-11-15 11:13  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: Add support for Konqueror (not GTK based
	  toolkit)

2006-11-15 10:35  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Avoid an NPWindow->ws_info double free.
	  Comment implementation choices.

2006-11-15 10:31  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h: Warning fixes (use uint8_t[] for NPPrintData
	  buffer)

2006-11-15 08:05  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Add printing support (implement NPP_Print)

2006-11-14 21:16  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.c, src/npw-rpc.h, src/npw-viewer.c,
	  src/npw-wrapper.c: Use dedicated marshaler for NPWindow & NPRect
	  structures. Rework NPP_SetWindow
	  to support NULL window arguments. Don't realize the top_widget,
	  only the form.

2006-11-13 22:07  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: use g_source_add_poll

2006-11-13 08:10  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-wrapper.c: _Exit(255) after a failed fork()+execv()
	  (original patch by Darryl L. Miles)

2006-11-12 22:08  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, src/npw-viewer.c, src/npw-viewer.map: use a version
	  script for RP8 compatibility glue (export __pure_virtual)

2006-11-12 20:41  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: fix XEvent polling, don't use deprecated gtk
	  polling routine, use g_source
	  polling functions

2006-11-12 20:06  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: use RP8 hack while building 32-bit viewer on x86_64

2006-11-11 17:03  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: Remove useless (and actually problematic)
	  XInitThreads() call

2006-11-11 16:40  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, nspluginwrapper.spec: install
	  nspluginwrapper symlink

2006-11-11 15:21  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: headers cleanup

2006-11-11 15:18  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-viewer.c: use XtResizeWidget() to resize the plugin
	  window

2006-11-11 09:46  Gwenole Beauchesne <gb.public@free.fr>

	* src/npw-rpc.h, src/npw-viewer.c, src/npw-wrapper.c: Implement
	  NPN_PostURL() and NPN_PostURLNotify()

2006-11-08 08:11  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile, configure, nspluginwrapper.spec: handle bi-arch builds
	  (original patch by Darryl L. Miles)

2006-11-08 06:38  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: don't override compile flags, the default
	  should be good enough and
	  distribution-specific packages are expected to be better

2006-11-08 06:37  Gwenole Beauchesne <gb.public@free.fr>

	* configure: there is no C++ in nspluginwrapper

2006-10-27 04:36  Gwenole Beauchesne <gb.public@free.fr>

	* Makefile: fix make uninstall target (reported by stranche)

2006-09-25 22:42  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: use plain make command not the %make macro
	  (Thibaut Cousin)

2006-09-24 16:11  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec, src/npw-viewer.c: fix acrobat reader
	  7 plugin

2006-09-24 16:07  Gwenole Beauchesne <gb.public@free.fr>

	* nspluginwrapper.spec: add specfile %changelog missed in initial
	  tarball

2006-09-24 16:06  Gwenole Beauchesne <gb.public@free.fr>

	* NEWS, nspluginwrapper.spec, src/debug.c, src/npw-viewer.c,
	  src/npw-wrapper.c, src/rpc.c, src/rpc.h: use a bidirectional
	  communication channel

2006-09-24 15:49  Gwenole Beauchesne <gb.public@free.fr>

	* gwenole, gwenole/projects, gwenole/projects/nspluginwrapper,
	  gwenole/projects/nspluginwrapper/branches,
	  gwenole/projects/nspluginwrapper/tags, ., COPYING, Makefile,
	  NEWS, README, TODO, configure, npapi, npapi/jni.h,
	  npapi/jni_md.h, npapi/jri.h, npapi/jri_md.h, npapi/jritypes.h,
	  npapi/npapi.h, npapi/npruntime.h, npapi/nptypes.h,
	  npapi/npupp.h, npapi/nspr, npapi/nspr/obsolete,
	  npapi/nspr/obsolete/protypes.h, npapi/nspr/prcpucfg.h,
	  npapi/nspr/prtypes.h, nspluginwrapper.spec, src, src/debug.c,
	  src/debug.h, src/npw-config.c, src/npw-rpc.c, src/npw-rpc.h,
	  src/npw-viewer.c, src/npw-viewer.sh, src/npw-wrapper.c,
	  src/rpc.c, src/rpc.h, src/sysdeps.h, src/utils.c, src/utils.h,
	  tests, tests/test-plugins.html, utils, utils/getdeps.sh,
	  utils/mkruntime.sh, utils/npw-shadow.c, utils/repackage.sh,
	  utils/xtrace.c: initial import

