summaryrefslogtreecommitdiff
path: root/www/mozilla
diff options
context:
space:
mode:
authorJoe Marcus Clarke <marcus@FreeBSD.org>2003-01-21 16:36:12 +0000
committerJoe Marcus Clarke <marcus@FreeBSD.org>2003-01-21 16:36:12 +0000
commit0be5e6c2044165784ec9bc84c3bed61e16ce3e70 (patch)
tree1272c5cc6e0a749a7ca10396ed6cf30889603964 /www/mozilla
parentMake sure fc-cache is run after installation for both the port and (diff)
At last, the long awaited update to 1.2.1. Let the bloodbath begin!
* Update to 1.2.1 * Add optional GTK2 and Xft support * Re-enable optimizations [1] * Disable JavaScript debugger by default [1] * Add calendar support [2] PR: 45789, 45969 [2] Submitted by: Joe Kelsey <joek@zircon.staff.flyingcroc.net> [2] Suggested by: David Schultz <dschultz@uclink.Berkeley.EDU>
Notes
Notes: svn path=/head/; revision=73726
Diffstat (limited to 'www/mozilla')
-rw-r--r--www/mozilla/Makefile132
-rw-r--r--www/mozilla/distinfo5
-rw-r--r--www/mozilla/files/mozilla.sh2
-rw-r--r--www/mozilla/files/mozilla_12b_patch953
-rw-r--r--www/mozilla/files/patch-config_autoconf.mk.in18
-rw-r--r--www/mozilla/files/patch-embedding::config::basebrowser-unix32
-rw-r--r--www/mozilla/files/patch-qt31
-rw-r--r--www/mozilla/files/patch-security317
-rw-r--r--www/mozilla/files/patch-xpcom_reflect_xptcall_src_md_unix_xptc_platforms_unixish_x86.h21
-rw-r--r--www/mozilla/pkg-descr.gtk213
10 files changed, 1104 insertions, 420 deletions
diff --git a/www/mozilla/Makefile b/www/mozilla/Makefile
index 408ceded0a2f..df3b8032e972 100644
--- a/www/mozilla/Makefile
+++ b/www/mozilla/Makefile
@@ -5,13 +5,12 @@
# $FreeBSD$
#
-PORTNAME= mozilla
-PORTVERSION= 1.1
-PORTREVISION= 3
-PORTEPOCH= 2
-CATEGORIES= www
+PORTNAME?= mozilla
+PORTVERSION= 1.2.1
+PORTEPOCH?= 2
+CATEGORIES?= www
MASTER_SITES= ${MASTER_SITE_MOZILLA} \
- http://people.FreeBSD.org/~marcus/:local
+ ${MASTER_SITE_LOCAL}:local
MASTER_SITE_SUBDIR= mozilla/releases/${PORTNAME}${PORTVERSION:S/.rc/rc/}/src \
marcus/:local
DISTFILES= ${PORTNAME}-source-${PORTVERSION:S/.rc/rc/}${EXTRACT_SUFX} \
@@ -28,20 +27,41 @@ LIB_DEPENDS= jpeg.9:${PORTSDIR}/graphics/jpeg \
WRKSRC= ${WRKDIR}/${PORTNAME}
+MOZILLA?= mozilla
+
WITHOUT_CHATZILLA= "Contains a buffer overflow reported at http://online.securityfocus.com/archive/1/270249"
+.if defined(WITH_GTK2)
+LIB_DEPENDS+= gtk-x11-2.0.0:${PORTSDIR}/x11-toolkits/gtk20 \
+ ORBit-2.0:${PORTSDIR}/devel/ORBit2
+.else
+USE_GNOME= gtk12
+.endif
+
+.if !defined(WITHOUT_XFT)
+LIB_DEPENDS+= Xft2.2:${PORTSDIR}/x11-fonts/Xft
+.if exists(${X11BASE}/lib/X11/fonts/mozilla/fonts.dir)
+BROKEN= Mozilla and Xft2 render the mozilla-fonts \
+ illegibly. Please remove the mozilla-fonts package.
+.endif
+.endif
+
+.if defined(WITH_CALENDAR)
+DISTFILES+= ${PORTNAME}-calendar-${PORTVERSION}${EXTRACT_SUFX}:local
+LIB_DEPENDS+= ical.0:${PORTSDIR}/devel/libical
+.endif
+
+USE_BZIP2= yes
+LATEST_LINK= ${MOZILLA}
EXTRACT_AFTER_ARGS= | ${TAR} -xf - --exclude */CVS/* \
--exclude */macbuild/*\
--exclude */package/* \
--exclude .cvsignore \
--exclude makefile.win \
--exclude MANIFEST
-
USE_X_PREFIX= yes
USE_PERL5= yes
USE_GMAKE= yes
-USE_GNOMENG= yes
-USE_GNOME= orbit gtk12
USE_REINPLACE= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= \
@@ -51,13 +71,9 @@ CONFIGURE_ARGS= \
--disable-cpp-rtti \
--enable-crypto \
--disable-debug \
- --enable-default-toolkit=gtk \
--enable-double-buffer \
- --enable-dtd-debug \
- --enable-jsd \
--enable-mathml \
--disable-md \
- --disable-optimize \
--disable-pedantic \
--disable-plaintext-editor-only \
--enable-strip \
@@ -70,7 +86,12 @@ CONFIGURE_ARGS= \
--with-system-png=${LOCALBASE} \
--with-pthreads
-PLIST= ${WRKSRC}/pkg-plist
+.if !defined(WITH_GTK2)
+USE_GNOMENG= yes
+USE_GNOME+= orbit
+.endif
+
+PLIST= ${WRKDIR}/pkg-plist
# LDAP is only used by mail and news so disable both together
.if defined(WITHOUT_MAILNEWS)
CONFIGURE_ARGS+= --disable-ldap --disable-mailnews
@@ -90,6 +111,33 @@ CONFIGURE_ARGS+= --enable-extensions=default,xmlterm
.endif
CONFIGURE_ENV= MOZ_INTERNAL_LIBART_LGPL=1
+.if defined(WITH_JAVASCRIPT_DEBUGGER)
+CONFIGURE_ARGS+= --enable-jsd \
+ --enable-dtd-debug
+.endif
+
+.if defined(WITH_CALENDAR)
+CONFIGURE_ENV+= LIBS="-L${LOCALBASE}/lib"
+CONFIGURE_ARGS+= --enable-calendar
+.endif
+
+.if defined(WITHOUT_COMPOSER)
+CONFIGURE_ARGS+= --disable-composer
+.endif
+
+.if defined(WITH_GTK2)
+CONFIGURE_ARGS+= --enable-default-toolkit=gtk2
+EXTRA_PATCHES= ${FILESDIR}/mozilla_12b_patch
+PKGCONFIG_FILES= mozilla-gtkmozembed.pc mozilla-js.pc mozilla-xpcom.pc \
+ mozilla-nspr.pc mozilla-nss.pc
+.else
+CONFIGURE_ARGS+= --enable-default-toolkit=gtk
+.endif
+
+.if !defined(WITHOUT_XFT)
+CONFIGURE_ARGS+= --enable-xft
+.endif
+
.include <bsd.port.pre.mk>
MAKE_ENV= LD_LIBRARY_PATH=${WRKSRC}/dist/bin \
@@ -108,13 +156,28 @@ BROKEN= "core dumps on alpha during post-build"
BROKEN="You must upgrade your freetype port to 1.3.1_2 or higher before installing Mozilla. If you have 1.3.1_2 installed, please remove ${LOCALBASE}/include/freetype, then build Mozilla"
.endif
+pre-everything::
+.if defined(WITH_CALENDAR)
+ @${ECHO_MSG} "Calendar is still beta software."
+ @${ECHO_MSG} "Use at your own risk."
+ @${ECHO_MSG} "http://mozilla.org/projects/calendar/"
+.endif
+
post-patch:
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
${WRKSRC}/build/unix/run-mozilla.sh
+.if !defined(WITHOUT_XFT)
+ @${REINPLACE_CMD} -e 's|X11/Xft/Xft\.h|X11/Xft/Xft2.h|g' \
+ ${WRKSRC}/gfx/src/gtk/nsDrawingSurfaceGTK.cpp \
+ ${WRKSRC}/gfx/src/gtk/nsFontMetricsXft.h
+.endif
+ @${REINPLACE_CMD} -e 's|%%MOZILLA%%|${MOZILLA}|g' \
+ -e 's|%%HEADERS_SUFX%%||g' \
+ ${WRKSRC}/config/autoconf.mk.in
post-build:
- ${SED} -e "s|%%PREFIX%%|${PREFIX}|g" \
- ${FILESDIR}/mozilla.sh >${WRKSRC}/mozilla
+ ${SED} -e "s|%%PREFIX%%|${PREFIX}|g" -e "s|%%MOZILLA%%|${MOZILLA}|g" \
+ ${FILESDIR}/mozilla.sh >${WRKSRC}/${MOZILLA}
(cd ${WRKSRC}/dist/bin; \
${SETENV} LD_LIBRARY_PATH=. MOZILLA_FIVE_HOME=. ./regxpcom; \
${SETENV} LD_LIBRARY_PATH=. MOZILLA_FIVE_HOME=. ./regchrome; \
@@ -123,29 +186,48 @@ post-build:
${XARGS} ${RMDIR} 2> /dev/null || ${TRUE}
pre-install:
- ${ECHO_CMD} bin/mozilla > ${PLIST}
+ ${RM} -f ${PLIST}
+ ${TOUCH} -f ${PLIST}
+ if [ ! -x ${PREFIX}/bin/mozilla -a ! -L ${PREFIX}/bin/mozilla ]; then \
+ ${ECHO_CMD} bin/mozilla >> ${PLIST} ; \
+ fi
+ ${ECHO_CMD} bin/${MOZILLA} >> ${PLIST}
if [ ! -L ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ]; then \
${ECHO_CMD} lib/browser_plugins/libjavaplugin_oji.so >> ${PLIST} ; \
fi
cd ${WRKSRC}/dist/bin && ${FIND} -s * -type f -o -type l | \
- ${SED} -e 's:^:lib/mozilla/:' >> ${PLIST} \
+ ${SED} -e 's:^:lib/${MOZILLA}/:' >> ${PLIST} \
&& ${FIND} -d * -type d | \
- ${SED} -e 's:^:@dirrm lib/mozilla/:' >> ${PLIST}
- ${ECHO_CMD} @dirrm lib/mozilla >> ${PLIST}
+ ${SED} -e 's:^:@dirrm lib/${MOZILLA}/:' >> ${PLIST}
+ ${ECHO_CMD} @dirrm lib/${MOZILLA} >> ${PLIST}
+.if defined(WITH_GTK2)
+ for pcfile in ${PKGCONFIG_FILES}; do \
+ ${ECHO_CMD} libdata/pkgconfig/$$pcfile >> ${PLIST} ; \
+ done
+.endif
do-install:
- ${MKDIR} ${PREFIX}/lib/mozilla
- ${CHMOD} 755 ${PREFIX}/lib/mozilla
+ ${MKDIR} ${PREFIX}/lib/${MOZILLA}
+ ${CHMOD} 755 ${PREFIX}/lib/${MOZILLA}
cd ${WRKSRC}/dist/bin && ${FIND} . | \
- cpio -pdm -L -R ${LIBOWN}:${LIBGRP} ${PREFIX}/lib/mozilla
- ${INSTALL_SCRIPT} ${WRKSRC}/mozilla ${PREFIX}/bin
+ cpio -pdm -L -R ${LIBOWN}:${LIBGRP} ${PREFIX}/lib/${MOZILLA}
+ ${INSTALL_SCRIPT} ${WRKSRC}/${MOZILLA} ${PREFIX}/bin
+ if [ ! -x ${PREFIX}/bin/mozilla -a ! -L ${PREFIX}/bin/mozilla ]; then \
+ ${LN} -sf ${PREFIX}/bin/${MOZILLA} ${PREFIX}/bin/mozilla ; \
+ fi
if [ ! -d ${PREFIX}/lib/browser_plugins ]; then \
${MKDIR} ${PREFIX}/lib/browser_plugins ; \
fi
if [ ! -L ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ]; then \
${LN} -sf ${LOCALBASE}/jdk1.3.1/jre/plugin/i386/ns600/libjavaplugin_oji.so \
- ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ; \
+ ${PREFIX}/lib/browser_plugins/libjavaplugin_oji.so ; \
fi
+.if defined(WITH_GTK2)
+ for pcfile in ${PKGCONFIG_FILES}; do \
+ ${INSTALL_DATA} ${WRKSRC}/build/unix/$$pcfile \
+ ${PREFIX}/libdata/pkgconfig ; \
+ done
+.endif
post-install:
@${CAT} ${PKGMESSAGE}
diff --git a/www/mozilla/distinfo b/www/mozilla/distinfo
index c1329ca724a4..bc387f0eaf53 100644
--- a/www/mozilla/distinfo
+++ b/www/mozilla/distinfo
@@ -1,2 +1,3 @@
-MD5 (mozilla-source-1.1.tar.gz) = 4fa54be2a540d584e428f50eaedfac76
-MD5 (libart_lgpl-1.1.tar.gz) = 276f65c384d020c36003260689806735
+MD5 (mozilla-source-1.2.1.tar.bz2) = 58c37a29ef2fae2939f5be116abec32a
+MD5 (libart_lgpl-1.2.1.tar.bz2) = f332c3c026adc1c2c0ceb3ac5847d5f5
+MD5 (mozilla-calendar-1.2.1.tar.bz2) = f0ae0bb5e4d7a5b0049dd23534f86002
diff --git a/www/mozilla/files/mozilla.sh b/www/mozilla/files/mozilla.sh
index 898fccbc6128..bbc7d2568bc6 100644
--- a/www/mozilla/files/mozilla.sh
+++ b/www/mozilla/files/mozilla.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-MOZILLA_DIR="%%PREFIX%%/lib/mozilla"
+MOZILLA_DIR="%%PREFIX%%/lib/%%MOZILLA%%"
MOZILLA_EXEC="mozilla"
LOCATION='new-tab'
diff --git a/www/mozilla/files/mozilla_12b_patch b/www/mozilla/files/mozilla_12b_patch
new file mode 100644
index 000000000000..7ab44168c025
--- /dev/null
+++ b/www/mozilla/files/mozilla_12b_patch
@@ -0,0 +1,953 @@
+Index: Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/Makefile.in,v
+retrieving revision 1.197
+diff -u -r1.197 Makefile.in
+--- Makefile.in 15 Oct 2002 23:34:32 -0000 1.197
++++ Makefile.in 22 Oct 2002 17:14:59 -0000
+@@ -267,6 +267,10 @@
+ tier_99_dirs += embedding/browser/gtk/tests
+ endif
+
++ifdef MOZ_ENABLE_GTK2
++tier_99_dirs += embedding/browser/gtk/tests
++endif
++
+ endif # BUILD_MODULES == all
+
+ STATIC_MAKEFILES := nsprpub directory/c-sdk
+Index: embedding/browser/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/Makefile.in,v
+retrieving revision 1.10
+diff -u -r1.10 Makefile.in
+--- embedding/browser/Makefile.in 18 Dec 2001 09:10:33 -0000 1.10
++++ embedding/browser/Makefile.in 22 Oct 2002 17:14:59 -0000
+@@ -31,6 +31,10 @@
+ DIRS += gtk
+ endif
+
++ifdef MOZ_ENABLE_GTK2
++DIRS += gtk
++endif
++
+ ifdef MOZ_ENABLE_PHOTON
+ DIRS += photon
+ endif
+Index: embedding/browser/gtk/src/EmbedProgress.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedProgress.cpp,v
+retrieving revision 1.10
+diff -u -r1.10 EmbedProgress.cpp
+--- embedding/browser/gtk/src/EmbedProgress.cpp 7 Sep 2002 17:09:12 -0000 1.10
++++ embedding/browser/gtk/src/EmbedProgress.cpp 22 Oct 2002 17:14:59 -0000
+@@ -80,8 +80,8 @@
+ }
+ gtk_signal_emit(GTK_OBJECT(mOwner->mOwningWidget),
+ moz_embed_signals[NET_STATE_ALL],
+- (const char *)uriString, aStateFlags, aStatus);
+-
++ (gpointer)(const char *)uriString,
++ (gint)aStateFlags, (gint)aStatus);
+ // and for stop, too
+ if ((aStateFlags & GTK_MOZ_EMBED_FLAG_IS_NETWORK) &&
+ (aStateFlags & GTK_MOZ_EMBED_FLAG_STOP))
+Index: embedding/browser/gtk/src/EmbedWindow.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedWindow.cpp,v
+retrieving revision 1.26
+diff -u -r1.26 EmbedWindow.cpp
+--- embedding/browser/gtk/src/EmbedWindow.cpp 7 Sep 2002 17:09:12 -0000 1.26
++++ embedding/browser/gtk/src/EmbedWindow.cpp 22 Oct 2002 17:14:59 -0000
+@@ -226,9 +226,11 @@
+ {
+ GtkWidget* parent = GTK_WIDGET(mOwner->mOwningWidget)->parent;
+
++#ifdef MOZ_WIDGET_GTK
+ if (GTK_IS_CONTAINER(parent))
+ gtk_container_focus(GTK_CONTAINER(parent),
+ GTK_DIR_TAB_FORWARD);
++#endif
+ return NS_OK;
+ }
+
+@@ -237,9 +239,11 @@
+ {
+ GtkWidget* parent = GTK_WIDGET(mOwner->mOwningWidget)->parent;
+
++#ifdef MOZ_WIDGET_GTK
+ if (GTK_IS_CONTAINER(parent))
+ gtk_container_focus(GTK_CONTAINER(parent),
+ GTK_DIR_TAB_BACKWARD);
++#endif
+ return NS_OK;
+ }
+
+@@ -405,7 +409,9 @@
+ 0, 0,
+ sTipWindow->allocation.width, sTipWindow->allocation.height);
+
++#ifdef MOZ_WIDGET_GTK
+ gtk_widget_popup(sTipWindow, aXCoords + root_x, aYCoords + root_y);
++#endif /* MOZ_WIDGET_GTK */
+
+ nsMemory::Free( (void*)tipString );
+
+Index: embedding/browser/gtk/src/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/Makefile.in,v
+retrieving revision 1.36
+diff -u -r1.36 Makefile.in
+--- embedding/browser/gtk/src/Makefile.in 23 Sep 2002 19:13:28 -0000 1.36
++++ embedding/browser/gtk/src/Makefile.in 22 Oct 2002 17:14:59 -0000
+@@ -56,6 +56,11 @@
+ EmbedWindowCreator.cpp \
+ EmbedStream.cpp
+
++ifdef MOZ_ENABLE_GTK2
++CSRCS = \
++ gtkmozembedmarshal.c
++endif
++
+ ifdef BUILD_STATIC_LIBS
+ # Static build stuff
+ DEFINES += -D_BUILD_STATIC_BIN=1
+@@ -88,13 +93,21 @@
+ gtkmozembed.h \
+ gtkmozembed_internal.h
+
++ifdef MOZ_ENABLE_GTK
+ EXTRA_DSO_LDOPTS = \
+ $(MOZ_COMPONENT_LIBS) \
+ $(XPCOM_GLUE_LIBS) \
+ -lgtksuperwin \
+ $(NULL)
++endif
++
++ifdef MOZ_ENABLE_GTK2
++EXTRA_DSO_LDOPTS = \
++ $(MOZ_COMPONENT_LIBS) \
++ $(NULL)
++endif
+
+-EXTRA_DSO_LDOPTS += $(MOZ_GTK_LDFLAGS)
++EXTRA_DSO_LDOPTS += $(MOZ_GTK_LDFLAGS) $(MOZ_GTK2_LIBS)
+
+ include $(topsrcdir)/config/rules.mk
+
+@@ -109,7 +122,8 @@
+ endif
+ endif
+
+-CXXFLAGS += $(MOZ_GTK_CFLAGS)
++CXXFLAGS += $(MOZ_GTK_CFLAGS) $(MOZ_GTK2_CFLAGS)
++CFLAGS += $(MOZ_GTK_CFLAGS) $(MOZ_GTK2_CFLAGS)
+
+ ifdef BUILD_STATIC_LIBS
+
+Index: embedding/browser/gtk/src/gtkmozembed2.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/gtkmozembed2.cpp,v
+retrieving revision 1.23
+diff -u -r1.23 gtkmozembed2.cpp
+--- embedding/browser/gtk/src/gtkmozembed2.cpp 12 Jan 2002 05:04:57 -0000 1.23
++++ embedding/browser/gtk/src/gtkmozembed2.cpp 22 Oct 2002 17:14:59 -0000
+@@ -36,11 +36,37 @@
+ #include <nsXPIDLString.h>
+ #include <nsReadableUtils.h>
+
++#ifdef MOZ_WIDGET_GTK
++
+ // so we can get callbacks from the mozarea
+ #include <gtkmozarea.h>
+
++// so we get the right marshaler for gtk 1.2
++#define gtkmozembed_VOID__INT_UINT \
++ gtk_marshal_NONE__INT_INT
++#define gtkmozembed_VOID__POINTER_INT_INT \
++ gtk_marshal_NONE__POINTER_INT_INT
++#define gtkmozembed_VOID__POINTER_INT_UINT \
++ gtk_marshal_NONE__POINTER_INT_INT
++#define gtkmozembed_VOID__POINTER_INT_POINTER \
++ gtk_marshal_NONE__POINTER_INT_POINTER
++
++#endif /* MOZ_WIDGET_GTK */
++
++#ifdef MOZ_WIDGET_GTK2
++
++#define GET_OBJECT_CLASS_TYPE(x) G_OBJECT_CLASS_TYPE(x)
++
++#include "gtkmozembedmarshal.h"
++
++#endif /* MOZ_WIDGET_GTK2 */
++
+ class nsIDirectoryServiceProvider;
+
++#ifdef MOZ_WIDGET_GTK
++
++#define GET_OBJECT_CLASS_TYPE(x) (GTK_OBJECT_CLASS(x)->type)
++
+ // Some "massaged" enum information for the GTK Type System
+ static GtkFlagValue gtk_moz_embed_progress_flags_values[] = {
+ { GTK_MOZ_EMBED_FLAG_START,
+@@ -138,6 +164,7 @@
+ { 0,
+ NULL, NULL }
+ };
++#endif /* MOZ_WIDGET_GTK */
+
+
+ // class and instance initialization
+@@ -180,6 +207,7 @@
+ GdkEventFocus *aGdkFocusEvent,
+ GtkMozEmbed *aEmbed);
+
++#ifdef MOZ_WIDGET_GTK
+ // signal handlers for tracking the focus and and focus out events on
+ // the toplevel window.
+
+@@ -189,6 +217,7 @@
+ static void
+ handle_toplevel_focus_out(GtkMozArea *aArea,
+ GtkMozEmbed *aEmbed);
++#endif /* MOZ_WIDGET_GTK */
+
+ // globals for this type of widget
+
+@@ -249,191 +278,193 @@
+ moz_embed_signals[LINK_MESSAGE] =
+ gtk_signal_new ("link_message",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, link_message),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[JS_STATUS] =
+ gtk_signal_new ("js_status",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, js_status),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[LOCATION] =
+ gtk_signal_new ("location",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, location),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[TITLE] =
+ gtk_signal_new("title",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, title),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[PROGRESS] =
+ gtk_signal_new("progress",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, progress),
+ gtk_marshal_NONE__INT_INT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
+ moz_embed_signals[PROGRESS_ALL] =
+ gtk_signal_new("progress_all",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, progress_all),
+- gtk_marshal_NONE__POINTER_INT_INT,
++ gtkmozembed_VOID__POINTER_INT_INT,
+ GTK_TYPE_NONE, 3, GTK_TYPE_STRING,
+ GTK_TYPE_INT, GTK_TYPE_INT);
+ moz_embed_signals[NET_STATE] =
+ gtk_signal_new("net_state",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_state),
+- gtk_marshal_NONE__INT_INT,
++ gtkmozembed_VOID__INT_UINT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_UINT);
+ moz_embed_signals[NET_STATE_ALL] =
+ gtk_signal_new("net_state_all",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_state_all),
+- gtk_marshal_NONE__POINTER_INT_INT,
++ gtkmozembed_VOID__POINTER_INT_UINT,
+ GTK_TYPE_NONE, 3, GTK_TYPE_STRING,
+ GTK_TYPE_INT, GTK_TYPE_UINT);
+ moz_embed_signals[NET_START] =
+ gtk_signal_new("net_start",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_start),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[NET_STOP] =
+ gtk_signal_new("net_stop",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, net_stop),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[NEW_WINDOW] =
+ gtk_signal_new("new_window",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, new_window),
+ gtk_marshal_NONE__POINTER_UINT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
+ moz_embed_signals[VISIBILITY] =
+ gtk_signal_new("visibility",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, visibility),
+ gtk_marshal_NONE__BOOL,
+ GTK_TYPE_NONE, 1, GTK_TYPE_BOOL);
+ moz_embed_signals[DESTROY_BROWSER] =
+ gtk_signal_new("destroy_browser",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, destroy_brsr),
+ gtk_marshal_NONE__NONE,
+ GTK_TYPE_NONE, 0);
+ moz_embed_signals[OPEN_URI] =
+ gtk_signal_new("open_uri",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, open_uri),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_STRING);
+ moz_embed_signals[SIZE_TO] =
+ gtk_signal_new("size_to",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, size_to),
+ gtk_marshal_NONE__INT_INT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
+ moz_embed_signals[DOM_KEY_DOWN] =
+ gtk_signal_new("dom_key_down",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_down),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_KEY_PRESS] =
+ gtk_signal_new("dom_key_press",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_press),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_KEY_UP] =
+ gtk_signal_new("dom_key_up",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_key_up),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_DOWN] =
+ gtk_signal_new("dom_mouse_down",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_down),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_UP] =
+ gtk_signal_new("dom_mouse_up",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_up),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_CLICK] =
+ gtk_signal_new("dom_mouse_click",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_click),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_DBL_CLICK] =
+ gtk_signal_new("dom_mouse_dbl_click",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_dbl_click),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_OVER] =
+ gtk_signal_new("dom_mouse_over",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_over),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[DOM_MOUSE_OUT] =
+ gtk_signal_new("dom_mouse_out",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, dom_mouse_out),
+ gtk_marshal_BOOL__POINTER,
+ GTK_TYPE_BOOL, 1, GTK_TYPE_POINTER);
+ moz_embed_signals[SECURITY_CHANGE] =
+ gtk_signal_new("security_change",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, security_change),
+ gtk_marshal_NONE__POINTER_UINT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
+ moz_embed_signals[STATUS_CHANGE] =
+ gtk_signal_new("status_change",
+ GTK_RUN_LAST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedClass, status_change),
+- gtk_marshal_NONE__POINTER_INT_POINTER,
++ gtkmozembed_VOID__POINTER_INT_POINTER,
+ GTK_TYPE_NONE, 3,
+ GTK_TYPE_POINTER, GTK_TYPE_INT, GTK_TYPE_POINTER);
+
++#ifdef MOZ_WIDGET_GTK
+ gtk_object_class_add_signals(object_class, moz_embed_signals,
+ EMBED_LAST_SIGNAL);
++#endif /* MOZ_WIDGET_GTK */
+
+ }
+
+@@ -538,6 +569,7 @@
+ embed,
+ GTK_OBJECT(child_widget));
+
++#ifdef MOZ_WIDGET_GTK
+ // connect to the toplevel focus out events for the child
+ GtkMozArea *mozarea = GTK_MOZAREA(child_widget);
+ gtk_signal_connect_while_alive(GTK_OBJECT(mozarea),
+@@ -551,6 +583,7 @@
+ GTK_SIGNAL_FUNC(handle_toplevel_focus_out),
+ embed,
+ GTK_OBJECT(mozarea));
++#endif /* MOZ_WIDGET_GTK */
+ }
+
+ static void
+@@ -663,6 +696,8 @@
+ return FALSE;
+ }
+
++#ifdef MOZ_WIDGET_GTK
++
+ static void
+ handle_toplevel_focus_in (GtkMozArea *aArea,
+ GtkMozEmbed *aEmbed)
+@@ -683,6 +718,8 @@
+ embedPrivate->TopLevelFocusOut();
+ }
+
++#endif /* MOZ_WIDGET_GTK */
++
+ // Widget methods
+
+ void
+@@ -1011,6 +1048,8 @@
+ return embedPrivate->mChromeMask;
+ }
+
++#ifdef MOZ_WIDGET_GTK
++
+ GtkType
+ gtk_moz_embed_progress_flags_get_type(void)
+ {
+@@ -1059,6 +1098,8 @@
+ return chrome_flags_type;
+ }
+
++#endif /* MOZ_WIDGET_GTK */
++
+ void
+ gtk_moz_embed_get_nsIWebBrowser (GtkMozEmbed *embed, nsIWebBrowser **retval)
+ {
+@@ -1183,14 +1224,16 @@
+ moz_embed_single_signals[NEW_WINDOW_ORPHAN] =
+ gtk_signal_new("new_window_orphan",
+ GTK_RUN_FIRST,
+- object_class->type,
++ GET_OBJECT_CLASS_TYPE(klass),
+ GTK_SIGNAL_OFFSET(GtkMozEmbedSingleClass,
+ new_window_orphan),
+ gtk_marshal_NONE__POINTER_UINT,
+ GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_UINT);
+
++#ifdef MOZ_WIDGET_GTK
+ gtk_object_class_add_signals(object_class, moz_embed_single_signals,
+ SINGLE_LAST_SIGNAL);
++#endif /* MOZ_WIDGET_GTK */
+ }
+
+ static void
+Index: embedding/browser/gtk/src/gtkmozembedmarshal.c
+===================================================================
+RCS file: embedding/browser/gtk/src/gtkmozembedmarshal.c
+diff -N embedding/browser/gtk/src/gtkmozembedmarshal.c
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ embedding/browser/gtk/src/gtkmozembedmarshal.c 22 Oct 2002 17:14:59 -0000
+@@ -0,0 +1,203 @@
++
++#include <glib-object.h>
++
++
++#ifdef G_ENABLE_DEBUG
++#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
++#define g_marshal_value_peek_char(v) g_value_get_char (v)
++#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
++#define g_marshal_value_peek_int(v) g_value_get_int (v)
++#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
++#define g_marshal_value_peek_long(v) g_value_get_long (v)
++#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
++#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
++#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
++#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
++#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
++#define g_marshal_value_peek_float(v) g_value_get_float (v)
++#define g_marshal_value_peek_double(v) g_value_get_double (v)
++#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
++#define g_marshal_value_peek_param(v) g_value_get_param (v)
++#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
++#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
++#define g_marshal_value_peek_object(v) g_value_get_object (v)
++#else /* !G_ENABLE_DEBUG */
++/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
++ * Do not access GValues directly in your code. Instead, use the
++ * g_value_get_*() functions
++ */
++#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
++#define g_marshal_value_peek_char(v) (v)->data[0].v_int
++#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
++#define g_marshal_value_peek_int(v) (v)->data[0].v_int
++#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
++#define g_marshal_value_peek_long(v) (v)->data[0].v_long
++#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
++#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
++#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
++#define g_marshal_value_peek_enum(v) (v)->data[0].v_int
++#define g_marshal_value_peek_flags(v) (v)->data[0].v_uint
++#define g_marshal_value_peek_float(v) (v)->data[0].v_float
++#define g_marshal_value_peek_double(v) (v)->data[0].v_double
++#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
++#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
++#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
++#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
++#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
++#endif /* !G_ENABLE_DEBUG */
++
++
++/* NONE:POINTER,INT,INT (/dev/stdin:1) */
++void
++gtkmozembed_VOID__POINTER_INT_INT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data)
++{
++ typedef void (*GMarshalFunc_VOID__POINTER_INT_INT) (gpointer data1,
++ gpointer arg_1,
++ gint arg_2,
++ gint arg_3,
++ gpointer data2);
++ register GMarshalFunc_VOID__POINTER_INT_INT callback;
++ register GCClosure *cc = (GCClosure*) closure;
++ register gpointer data1, data2;
++
++ g_return_if_fail (n_param_values == 4);
++
++ if (G_CCLOSURE_SWAP_DATA (closure))
++ {
++ data1 = closure->data;
++ data2 = g_value_peek_pointer (param_values + 0);
++ }
++ else
++ {
++ data1 = g_value_peek_pointer (param_values + 0);
++ data2 = closure->data;
++ }
++ callback = (GMarshalFunc_VOID__POINTER_INT_INT) (marshal_data ? marshal_data : cc->callback);
++
++ callback (data1,
++ g_marshal_value_peek_pointer (param_values + 1),
++ g_marshal_value_peek_int (param_values + 2),
++ g_marshal_value_peek_int (param_values + 3),
++ data2);
++}
++
++/* NONE:INT,UINT (/dev/stdin:2) */
++void
++gtkmozembed_VOID__INT_UINT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data)
++{
++ typedef void (*GMarshalFunc_VOID__INT_UINT) (gpointer data1,
++ gint arg_1,
++ guint arg_2,
++ gpointer data2);
++ register GMarshalFunc_VOID__INT_UINT callback;
++ register GCClosure *cc = (GCClosure*) closure;
++ register gpointer data1, data2;
++
++ g_return_if_fail (n_param_values == 3);
++
++ if (G_CCLOSURE_SWAP_DATA (closure))
++ {
++ data1 = closure->data;
++ data2 = g_value_peek_pointer (param_values + 0);
++ }
++ else
++ {
++ data1 = g_value_peek_pointer (param_values + 0);
++ data2 = closure->data;
++ }
++ callback = (GMarshalFunc_VOID__INT_UINT) (marshal_data ? marshal_data : cc->callback);
++
++ callback (data1,
++ g_marshal_value_peek_int (param_values + 1),
++ g_marshal_value_peek_uint (param_values + 2),
++ data2);
++}
++
++/* NONE:POINTER,INT,UINT (/dev/stdin:3) */
++void
++gtkmozembed_VOID__POINTER_INT_UINT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data)
++{
++ typedef void (*GMarshalFunc_VOID__POINTER_INT_UINT) (gpointer data1,
++ gpointer arg_1,
++ gint arg_2,
++ guint arg_3,
++ gpointer data2);
++ register GMarshalFunc_VOID__POINTER_INT_UINT callback;
++ register GCClosure *cc = (GCClosure*) closure;
++ register gpointer data1, data2;
++
++ g_return_if_fail (n_param_values == 4);
++
++ if (G_CCLOSURE_SWAP_DATA (closure))
++ {
++ data1 = closure->data;
++ data2 = g_value_peek_pointer (param_values + 0);
++ }
++ else
++ {
++ data1 = g_value_peek_pointer (param_values + 0);
++ data2 = closure->data;
++ }
++ callback = (GMarshalFunc_VOID__POINTER_INT_UINT) (marshal_data ? marshal_data : cc->callback);
++
++ callback (data1,
++ g_marshal_value_peek_pointer (param_values + 1),
++ g_marshal_value_peek_int (param_values + 2),
++ g_marshal_value_peek_uint (param_values + 3),
++ data2);
++}
++
++/* NONE:POINTER,INT,POINTER (/dev/stdin:4) */
++void
++gtkmozembed_VOID__POINTER_INT_POINTER (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data)
++{
++ typedef void (*GMarshalFunc_VOID__POINTER_INT_POINTER) (gpointer data1,
++ gpointer arg_1,
++ gint arg_2,
++ gpointer arg_3,
++ gpointer data2);
++ register GMarshalFunc_VOID__POINTER_INT_POINTER callback;
++ register GCClosure *cc = (GCClosure*) closure;
++ register gpointer data1, data2;
++
++ g_return_if_fail (n_param_values == 4);
++
++ if (G_CCLOSURE_SWAP_DATA (closure))
++ {
++ data1 = closure->data;
++ data2 = g_value_peek_pointer (param_values + 0);
++ }
++ else
++ {
++ data1 = g_value_peek_pointer (param_values + 0);
++ data2 = closure->data;
++ }
++ callback = (GMarshalFunc_VOID__POINTER_INT_POINTER) (marshal_data ? marshal_data : cc->callback);
++
++ callback (data1,
++ g_marshal_value_peek_pointer (param_values + 1),
++ g_marshal_value_peek_int (param_values + 2),
++ g_marshal_value_peek_pointer (param_values + 3),
++ data2);
++}
++
+Index: embedding/browser/gtk/src/gtkmozembedmarshal.h
+===================================================================
+RCS file: embedding/browser/gtk/src/gtkmozembedmarshal.h
+diff -N embedding/browser/gtk/src/gtkmozembedmarshal.h
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ embedding/browser/gtk/src/gtkmozembedmarshal.h 22 Oct 2002 17:14:59 -0000
+@@ -0,0 +1,48 @@
++
++#ifndef __gtkmozembed_MARSHAL_H__
++#define __gtkmozembed_MARSHAL_H__
++
++#include <glib-object.h>
++
++G_BEGIN_DECLS
++
++/* NONE:POINTER,INT,INT (/dev/stdin:1) */
++extern void gtkmozembed_VOID__POINTER_INT_INT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data);
++#define gtkmozembed_NONE__POINTER_INT_INT gtkmozembed_VOID__POINTER_INT_INT
++
++/* NONE:INT,UINT (/dev/stdin:2) */
++extern void gtkmozembed_VOID__INT_UINT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data);
++#define gtkmozembed_NONE__INT_UINT gtkmozembed_VOID__INT_UINT
++
++/* NONE:POINTER,INT,UINT (/dev/stdin:3) */
++extern void gtkmozembed_VOID__POINTER_INT_UINT (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data);
++#define gtkmozembed_NONE__POINTER_INT_UINT gtkmozembed_VOID__POINTER_INT_UINT
++
++/* NONE:POINTER,INT,POINTER (/dev/stdin:4) */
++extern void gtkmozembed_VOID__POINTER_INT_POINTER (GClosure *closure,
++ GValue *return_value,
++ guint n_param_values,
++ const GValue *param_values,
++ gpointer invocation_hint,
++ gpointer marshal_data);
++#define gtkmozembed_NONE__POINTER_INT_POINTER gtkmozembed_VOID__POINTER_INT_POINTER
++
++G_END_DECLS
++
++#endif /* __gtkmozembed_MARSHAL_H__ */
++
+Index: embedding/browser/gtk/src/types.txt
+===================================================================
+RCS file: embedding/browser/gtk/src/types.txt
+diff -N embedding/browser/gtk/src/types.txt
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ embedding/browser/gtk/src/types.txt 22 Oct 2002 17:14:59 -0000
+@@ -0,0 +1,4 @@
++NONE:POINTER,INT,INT
++NONE:INT,UINT
++NONE:POINTER,INT,UINT
++NONE:POINTER,INT,POINTER
+Index: embedding/browser/gtk/tests/TestGtkEmbed.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/tests/TestGtkEmbed.cpp,v
+retrieving revision 1.32
+diff -u -r1.32 TestGtkEmbed.cpp
+--- embedding/browser/gtk/tests/TestGtkEmbed.cpp 24 Sep 2002 01:56:34 -0000 1.32
++++ embedding/browser/gtk/tests/TestGtkEmbed.cpp 22 Oct 2002 17:14:59 -0000
+@@ -304,8 +304,19 @@
+ FALSE, // fill
+ 0); // padding
+ // new horiz toolbar with buttons + icons
++#ifdef MOZ_WIDGET_GTK
+ browser->toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL,
+ GTK_TOOLBAR_BOTH);
++#endif /* MOZ_WIDGET_GTK */
++
++#ifdef MOZ_WIDGET_GTK2
++ browser->toolbar = gtk_toolbar_new();
++ gtk_toolbar_set_orientation(GTK_TOOLBAR(browser->toolbar),
++ GTK_ORIENTATION_HORIZONTAL);
++ gtk_toolbar_set_style(GTK_TOOLBAR(browser->toolbar),
++ GTK_TOOLBAR_BOTH);
++#endif /* MOZ_WIDGET_GTK2 */
++
+ // add it to the hbox
+ gtk_box_pack_start(GTK_BOX(browser->toolbarHBox), browser->toolbar,
+ FALSE, // expand
+Index: embedding/browser/gtk/src/gtkmozembed2.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/gtkmozembed2.cpp,v
+retrieving revision 1.23
+diff -u -r1.23 gtkmozembed2.cpp
+--- embedding/browser/gtk/src/gtkmozembed2.cpp 12 Jan 2002 05:04:57 -0000 1.23
++++ embedding/browser/gtk/src/gtkmozembed2.cpp 24 Oct 2002 21:39:07 -0000
+@@ -443,6 +443,8 @@
+ EmbedPrivate *priv = new EmbedPrivate();
+ embed->data = priv;
+ gtk_widget_set_name(GTK_WIDGET(embed), "gtkmozembed");
++
++ GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET(embed), GTK_NO_WINDOW);
+ }
+
+ GtkWidget *
+Index: widget/src/gtk2/nsWindow.cpp
+===================================================================
+RCS file: /cvsroot/mozilla/widget/src/gtk2/nsWindow.cpp,v
+retrieving revision 1.38
+diff -u -r1.38 nsWindow.cpp
+--- widget/src/gtk2/nsWindow.cpp 10 Aug 2002 18:21:22 -0000 1.38
++++ widget/src/gtk2/nsWindow.cpp 26 Aug 2002 19:12:43 -0000
+@@ -145,7 +145,6 @@
+
+ /* initialization static functions */
+ static nsresult initialize_prefs (void);
+-static nsresult initialize_default_icon (void);
+
+ // this is the last window that had a drag event happen on it.
+ nsWindow *nsWindow::mLastDragMotionWindow = NULL;
+@@ -216,7 +215,6 @@
+
+ // It's OK if either of these fail, but it may not be one day.
+ initialize_prefs();
+- initialize_default_icon();
+ }
+
+ if (mLastDragMotionWindow == this)
+@@ -1994,6 +1992,7 @@
+ mIsTopLevel = PR_TRUE;
+ if (mWindowType == eWindowType_dialog) {
+ mShell = gtk_window_new(GTK_WINDOW_TOPLEVEL);
++ SetupWindowIcon(mShell);
+ gtk_window_set_type_hint(GTK_WINDOW(mShell),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+ gtk_window_set_transient_for(GTK_WINDOW(mShell),
+@@ -2030,6 +2029,7 @@
+ }
+ else { // must be eWindowType_toplevel
+ mShell = gtk_window_new(GTK_WINDOW_TOPLEVEL);
++ SetupWindowIcon(mShell);
+ // each toplevel window gets its own window group
+ mWindowGroup = gtk_window_group_new();
+ // and add ourselves to the window group
+@@ -3147,11 +3147,10 @@
+ return NS_OK;
+ }
+
+-/* static */
+ nsresult
+-initialize_default_icon(void)
++nsWindow::SetupWindowIcon(GtkWidget *window)
+ {
+- // Set up the default icon for all windows
++ // Set up the window icon
+ nsresult rv;
+ nsCOMPtr<nsIFile> chromeDir;
+ rv = NS_GetSpecialDirectory(NS_APP_CHROME_DIR,
+@@ -3181,7 +3180,7 @@
+
+ GList *list = NULL;
+ list = g_list_append(list, defaultIcon);
+- gtk_window_set_default_icon_list(list);
++ gtk_window_set_icon_list(GTK_WINDOW(window), list);
+ g_object_unref(G_OBJECT(defaultIcon));
+ g_list_free(list);
+
+Index: widget/src/gtk2/nsWindow.h
+===================================================================
+RCS file: /cvsroot/mozilla/widget/src/gtk2/nsWindow.h,v
+retrieving revision 1.24
+diff -u -r1.24 nsWindow.h
+--- widget/src/gtk2/nsWindow.h 10 Aug 2002 18:07:20 -0000 1.24
++++ widget/src/gtk2/nsWindow.h 26 Aug 2002 19:12:45 -0000
+@@ -254,7 +254,8 @@
+ private:
+ void GetToplevelWidget(GtkWidget **aWidget);
+ void *SetupPluginPort(void);
+-
++ nsresult SetupWindowIcon(GtkWidget *window);
++
+ GtkWidget *mShell;
+ MozContainer *mContainer;
+ MozDrawingarea *mDrawingarea;
+
+Index: build/unix/mozilla-gtkmozembed.pc.in
+===================================================================
+RCS file: /cvsroot/mozilla/build/unix/mozilla-gtkmozembed.pc.in,v
+retrieving revision 1.1
+diff -u -r1.1 mozilla-gtkmozembed.pc.in
+--- build/unix/mozilla-gtkmozembed.pc.in 28 May 2002 20:20:40 -0000 1.1
++++ build/unix/mozilla-gtkmozembed.pc.in 25 Oct 2002 09:30:19 -0000
+@@ -7,5 +7,5 @@
+ Description: Mozilla Embedding Widget for Gtk+
+ Version: %MOZILLA_VERSION%
+ Requires: mozilla-xpcom = %MOZILLA_VERSION%
+-Libs: -L${libdir} -lgtkembedmoz -lgtksuperwin
++Libs: -L${libdir} -lgtkembedmoz
+ Cflags: -I${includedir}/gtkembedmoz
+--- embedding/browser/gtk/tests/Makefile.in.orig Mon Sep 23 21:56:35 2002
++++ embedding/browser/gtk/tests/Makefile.in Tue Oct 29 03:24:44 2002
+@@ -45,10 +45,18 @@
+ CPPSRCS += TestGtkEmbedMDI.cpp
+ endif
+
++ifdef MOZ_ENABLE_GTK
+ LIBS += \
+ -lgtkembedmoz \
+ -lgtksuperwin \
+ $(NULL)
++endif
++
++ifdef MOZ_ENABLE_GTK2
++LIBS += \
++ -lgtkembedmoz \
++ $(NULL)
++endif
+
+ include $(topsrcdir)/config/config.mk
+
+@@ -72,7 +80,7 @@
+
+ include $(topsrcdir)/config/rules.mk
+
+-CXXFLAGS += $(MOZ_GTK_CFLAGS)
++CXXFLAGS += $(MOZ_GTK_CFLAGS) $(MOZ_GTK2_CFLAGS)
+
+ ifdef ENABLE_GNOME
+ CXXFLAGS += `gnome-config --cflags gnomeui`
diff --git a/www/mozilla/files/patch-config_autoconf.mk.in b/www/mozilla/files/patch-config_autoconf.mk.in
new file mode 100644
index 000000000000..c119b0c2c6a8
--- /dev/null
+++ b/www/mozilla/files/patch-config_autoconf.mk.in
@@ -0,0 +1,18 @@
+--- config/autoconf.mk.in.orig Sun Nov 17 14:47:49 2002
++++ config/autoconf.mk.in Sun Nov 17 14:48:17 2002
+@@ -30,13 +30,13 @@
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-includedir = @includedir@/mozilla-$(MOZILLA_VERSION)
++includedir = @includedir@/mozilla%%HEADERS_SUFX%%
+ libdir = @libdir@
+ datadir = @datadir@
+ mandir = @mandir@
+ idldir = @datadir@/idl/mozilla-$(MOZILLA_VERSION)
+
+-mozappdir = $(libdir)/mozilla-$(MOZILLA_VERSION)
++mozappdir = $(libdir)/%%MOZILLA%%
+ mredir = $(libdir)/mre/mre-$(MOZILLA_VERSION)
+ mrelibdir = $(mredir)/lib
+
diff --git a/www/mozilla/files/patch-embedding::config::basebrowser-unix b/www/mozilla/files/patch-embedding::config::basebrowser-unix
deleted file mode 100644
index 5eae8879b0ca..000000000000
--- a/www/mozilla/files/patch-embedding::config::basebrowser-unix
+++ /dev/null
@@ -1,32 +0,0 @@
-
-$FreeBSD$
-
---- embedding/config/basebrowser-unix.orig Thu Feb 7 23:50:19 2002
-+++ embedding/config/basebrowser-unix Tue Mar 12 17:06:08 2002
-@@ -119,6 +119,7 @@
-
- ; layout
- components/libgkcontent.so
-+libmoz_art_lgpl.so
- res/dtd/*
- components/libgklayout.so
- components/libhtmlpars.so
-@@ -203,12 +204,12 @@
- components/unicharutil.xpt
- components/libchardet.so
- ; optional - on english only systems
--; components/libucvja.so for japanese
--; components/libucvko.so for korean
--; components/libucvcn.so for simplified chinese
--; components/libucvtw.so for traditional chinese
--; components/libucvtw2.so for traditional chinese
--; components/libucvibm.so for ibm
-+components/libucvja.so
-+components/libucvko.so
-+components/libucvcn.so
-+components/libucvtw.so
-+components/libucvtw2.so
-+components/libucvibm.so
-
-
- res/language.properties
diff --git a/www/mozilla/files/patch-qt b/www/mozilla/files/patch-qt
index acec8e26f297..9bf05f639a6c 100644
--- a/www/mozilla/files/patch-qt
+++ b/www/mozilla/files/patch-qt
@@ -1,15 +1,6 @@
---- configure.orig Wed May 8 22:24:05 2002
-+++ configure Mon May 13 01:18:53 2002
-@@ -7489,7 +7489,7 @@
- EOF
-
- if test "$ac_cv_have_dash_pthread" = "yes"; then
-- _PTHREAD_LDFLAGS=""
-+ _PTHREAD_LDFLAGS="-pthread"
- else
- _PTHREAD_LDFLAGS="-lc_r"
- fi
-@@ -9967,7 +9967,7 @@
+--- configure.orig Tue Oct 15 19:39:37 2002
++++ configure Fri Oct 18 18:20:50 2002
+@@ -10646,7 +10646,7 @@
fi
MOC=$HOST_MOC
@@ -17,20 +8,16 @@
+ QT_CFLAGS="-I${QTDIR}/include/X11/qt -DQT_GENUINE_STR"
QT_LIBS="-L/usr/X11R6/lib -L${QTDIR}/lib -lqt -lXext -lX11"
- # Check whether --with-static-qt or --without-static-qt was given.
-@@ -10836,13 +10836,13 @@
-
+ MOZ_QT_LDFLAGS=$QT_LIBS
+@@ -11402,9 +11402,9 @@
--MOZ_EXTENSIONS_DEFAULT=" cookie wallet content-packs xml-rpc xmlextras help pref transformiix venkman inspector irc universalchardet"
-+MOZ_EXTENSIONS_DEFAULT=" cookie wallet content-packs xml-rpc xmlextras help pref transformiix venkman inspector universalchardet"
- if test -n "$SUNCTL"; then
- MOZ_EXTENSIONS_DEFAULT="$MOZ_EXTENSIONS_DEFAULT ctl"
- fi
+-MOZ_EXTENSIONS_DEFAULT=" cookie wallet content-packs xml-rpc xmlextras help pref transformiix venkman inspector irc universalchardet typeaheadfind"
++MOZ_EXTENSIONS_DEFAULT=" cookie wallet content-packs xml-rpc xmlextras help pref transformiix venkman inspector universalchardet typeaheadfind"
--MOZ_EXTENSIONS_ALL="$MOZ_EXTENSIONS_DEFAULT xmlterm access-builtin ctl p3p interfaceinfo"
-+MOZ_EXTENSIONS_ALL="$MOZ_EXTENSIONS_DEFAULT irc xmlterm access-builtin ctl p3p interfaceinfo"
+-MOZ_EXTENSIONS_ALL="$MOZ_EXTENSIONS_DEFAULT xmlterm access-builtin p3p interfaceinfo datetime finger cview"
++MOZ_EXTENSIONS_ALL="$MOZ_EXTENSIONS_DEFAULT irc xmlterm access-builtin p3p interfaceinfo datetime finger cview"
# Check whether --enable-extensions or --disable-extensions was given.
if test "${enable_extensions+set}" = set; then
diff --git a/www/mozilla/files/patch-security b/www/mozilla/files/patch-security
deleted file mode 100644
index 4b3b56a18ac2..000000000000
--- a/www/mozilla/files/patch-security
+++ /dev/null
@@ -1,317 +0,0 @@
-Index: content/html/content/src/nsHTMLImageElement.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/content/html/content/src/nsHTMLImageElement.cpp,v
-retrieving revision 1.121
-diff -u -r1.121 nsHTMLImageElement.cpp
---- content/html/content/src/nsHTMLImageElement.cpp 24 Aug 2002 14:40:45 -0000 1.121
-+++ content/html/content/src/nsHTMLImageElement.cpp 17 Sep 2002 04:07:27 -0000
-@@ -886,12 +886,17 @@
-
- nsCOMPtr<nsIDocument> doc;
- nsCOMPtr<nsILoadGroup> loadGroup;
-+ nsCOMPtr<nsIURI> documentURI;
- shell->GetDocument(getter_AddRefs(doc));
- if (doc) {
- doc->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
-+
-+ // Get the documment URI for the referrer.
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
- }
-
-- il->LoadImage(uri, nsnull, loadGroup, this, context, nsIRequest::LOAD_NORMAL,
-+ // XXX: initialDocumentURI is NULL!
-+ il->LoadImage(uri, nsnull, documentURI, loadGroup, this, context, nsIRequest::LOAD_NORMAL,
- nsnull, nsnull, getter_AddRefs(mRequest));
- }
- }
-Index: content/xbl/src/nsXBLResourceLoader.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/content/xbl/src/nsXBLResourceLoader.cpp,v
-retrieving revision 1.7
-diff -u -r1.7 nsXBLResourceLoader.cpp
---- content/xbl/src/nsXBLResourceLoader.cpp 7 Sep 2002 17:08:43 -0000 1.7
-+++ content/xbl/src/nsXBLResourceLoader.cpp 17 Sep 2002 04:07:29 -0000
-@@ -127,9 +127,11 @@
- if (!il) continue;
- }
-
-- // Now kick off the image load
-+ // Now kick off the image load...
-+ // Passing NULL for pretty much everything -- cause we don't care!
-+ // XXX: initialDocumentURI is NULL!
- nsCOMPtr<imgIRequest> req;
-- il->LoadImage(url, nsnull, nsnull, nsnull, nsnull, nsIRequest::LOAD_BACKGROUND, nsnull, nsnull, getter_AddRefs(req));
-+ il->LoadImage(url, nsnull, nsnull, nsnull, nsnull, nsnull, nsIRequest::LOAD_BACKGROUND, nsnull, nsnull, getter_AddRefs(req));
- }
- else if (curr->mType == nsXBLAtoms::stylesheet) {
- if (!cssLoader) {
-Index: layout/base/src/nsImageLoader.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/layout/base/src/nsImageLoader.cpp,v
-retrieving revision 3.11
-diff -u -r3.11 nsImageLoader.cpp
---- layout/base/src/nsImageLoader.cpp 26 Apr 2002 20:44:37 -0000 3.11
-+++ layout/base/src/nsImageLoader.cpp 17 Sep 2002 04:07:48 -0000
-@@ -92,8 +92,6 @@
- return NS_ERROR_FAILURE;
-
- nsCOMPtr<nsILoadGroup> loadGroup;
-- nsCOMPtr<nsIURI> uri;
-- nsCOMPtr<nsIURI> baseURI;
-
- nsCOMPtr<nsIPresShell> shell;
- nsresult rv = mPresContext->GetShell(getter_AddRefs(shell));
-@@ -106,6 +104,10 @@
- // Get the document's loadgroup
- doc->GetDocumentLoadGroup(getter_AddRefs(loadGroup));
-
-+ // Get the document URI (for the referrer).
-+ nsCOMPtr<nsIURI> documentURI;
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+
- if (mRequest) {
- nsCOMPtr<nsIURI> oldURI;
- mRequest->GetURI(getter_AddRefs(oldURI));
-@@ -119,7 +121,8 @@
- nsCOMPtr<imgILoader> il(do_GetService("@mozilla.org/image/loader;1", &rv));
- if (NS_FAILED(rv)) return rv;
-
-- return il->LoadImage(aURI, nsnull, loadGroup, NS_STATIC_CAST(imgIDecoderObserver *, this),
-+ // XXX: initialDocumentURI is NULL!
-+ return il->LoadImage(aURI, nsnull, documentURI, loadGroup, NS_STATIC_CAST(imgIDecoderObserver *, this),
- nsnull, nsIRequest::LOAD_BACKGROUND, nsnull, nsnull, getter_AddRefs(mRequest));
- }
-
-Index: layout/html/base/src/nsBulletFrame.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/layout/html/base/src/nsBulletFrame.cpp,v
-retrieving revision 1.79
-diff -u -r1.79 nsBulletFrame.cpp
---- layout/html/base/src/nsBulletFrame.cpp 12 Jul 2002 20:46:19 -0000 1.79
-+++ layout/html/base/src/nsBulletFrame.cpp 17 Sep 2002 04:07:49 -0000
-@@ -134,6 +134,16 @@
- nsCOMPtr<nsIURI> imgURI;
- NS_NewURI(getter_AddRefs(imgURI), myList->mListStyleImage, nsnull, baseURI);
-
-+ // Get the document URI for the referrer...
-+ nsCOMPtr<nsIURI> documentURI;
-+ nsCOMPtr<nsIDocument> doc;
-+ if (mContent) {
-+ (void) mContent->GetDocument(*getter_AddRefs(doc));
-+ if (doc) {
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+ }
-+ }
-+
- if (!mListener) {
- nsBulletListener *listener;
- NS_NEWXPCOM(listener, nsBulletListener);
-@@ -144,7 +154,8 @@
- NS_RELEASE(listener);
- }
-
-- il->LoadImage(imgURI, nsnull, loadGroup, mListener, aPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(mImageRequest));
-+ // XXX: initialDocumentURI is NULL !
-+ il->LoadImage(imgURI, nsnull, documentURI, loadGroup, mListener, aPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(mImageRequest));
- }
-
- return NS_OK;
-@@ -1529,7 +1540,19 @@
- nsCOMPtr<nsILoadGroup> loadGroup;
- GetLoadGroup(aPresContext, getter_AddRefs(loadGroup));
-
-- il->LoadImage(newURI, nsnull, loadGroup, mListener, aPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(mImageRequest));
-+ // Get the document URI for the referrer...
-+ nsCOMPtr<nsIURI> documentURI;
-+ nsCOMPtr<nsIDocument> doc;
-+ if (mContent) {
-+ (void) mContent->GetDocument(*getter_AddRefs(doc));
-+ if (doc) {
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+ }
-+ }
-+
-+
-+ // XXX: initialDocumentURI is NULL !
-+ il->LoadImage(newURI, nsnull, documentURI, loadGroup, mListener, aPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(mImageRequest));
- }
- }
- }
-Index: layout/html/base/src/nsImageFrame.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/layout/html/base/src/nsImageFrame.cpp,v
-retrieving revision 1.248
-diff -u -r1.248 nsImageFrame.cpp
---- layout/html/base/src/nsImageFrame.cpp 3 Sep 2002 22:49:51 -0000 1.248
-+++ layout/html/base/src/nsImageFrame.cpp 17 Sep 2002 04:07:49 -0000
-@@ -2001,8 +2001,19 @@
-
- nsCOMPtr<nsIURI> baseURI;
- rv = aPresContext->GetBaseURL(getter_AddRefs(baseURI));
-+
-+ // Get the document URI for the referrer...
-+ nsCOMPtr<nsIURI> documentURI;
-+ nsCOMPtr<nsIDocument> doc;
-+ if (mContent) {
-+ (void) mContent->GetDocument(*getter_AddRefs(doc));
-+ if (doc) {
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+ }
-+ }
-+
- nsCOMPtr<imgIRequest> tempRequest;
-- return il->LoadImage(uri, baseURI, loadGroup, mListener, aPresContext, loadFlags, nsnull, aRequest, getter_AddRefs(tempRequest));
-+ return il->LoadImage(uri, baseURI, documentURI, loadGroup, mListener, aPresContext, loadFlags, nsnull, aRequest, getter_AddRefs(tempRequest));
- }
-
- #define INTERNAL_GOPHER_LENGTH 16 /* "internal-gopher-" length */
-Index: layout/xul/base/src/nsImageBoxFrame.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/layout/xul/base/src/nsImageBoxFrame.cpp,v
-retrieving revision 1.39
-diff -u -r1.39 nsImageBoxFrame.cpp
---- layout/xul/base/src/nsImageBoxFrame.cpp 23 May 2002 00:00:32 -0000 1.39
-+++ layout/xul/base/src/nsImageBoxFrame.cpp 17 Sep 2002 04:07:54 -0000
-@@ -456,7 +456,18 @@
- nsCOMPtr<nsILoadGroup> loadGroup;
- GetLoadGroup(aPresContext, getter_AddRefs(loadGroup));
-
-- il->LoadImage(srcURI, nsnull, loadGroup, mListener, aPresContext, mLoadFlags, nsnull, nsnull, getter_AddRefs(mImageRequest));
-+ // Get the document URI for the referrer...
-+ nsCOMPtr<nsIURI> documentURI;
-+ nsCOMPtr<nsIDocument> doc;
-+ if (mContent) {
-+ (void) mContent->GetDocument(*getter_AddRefs(doc));
-+ if (doc) {
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+ }
-+ }
-+
-+ // XXX: initialDocumentURI is NULL!
-+ il->LoadImage(srcURI, nsnull, documentURI, loadGroup, mListener, aPresContext, mLoadFlags, nsnull, nsnull, getter_AddRefs(mImageRequest));
-
- aResize = PR_TRUE;
- }
-Index: layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp,v
-retrieving revision 1.136
-diff -u -r1.136 nsTreeBodyFrame.cpp
---- layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp 7 Sep 2002 05:37:42 -0000 1.136
-+++ layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp 17 Sep 2002 04:07:54 -0000
-@@ -1862,8 +1862,14 @@
-
- nsresult rv;
- nsCOMPtr<imgILoader> il(do_GetService("@mozilla.org/image/loader;1", &rv));
-+
-+ // Get the documment URI for the referrer.
-+ nsCOMPtr<nsIURI> documentURI;
-+ doc->GetDocumentURL(getter_AddRefs(documentURI));
-+
- mImageGuard = PR_TRUE;
-- rv = il->LoadImage(srcURI, nsnull, nsnull, listener, mPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(imageRequest));
-+ // XXX: initialDocumentURI is NULL!
-+ rv = il->LoadImage(srcURI, nsnull, documentURI, nsnull, listener, mPresContext, nsIRequest::LOAD_NORMAL, nsnull, nsnull, getter_AddRefs(imageRequest));
- mImageGuard = PR_FALSE;
-
- // In a case it was already cached.
-Index: modules/libpr0n/public/imgILoader.idl
-===================================================================
-RCS file: /cvsroot/mozilla/modules/libpr0n/public/imgILoader.idl,v
-retrieving revision 1.8
-diff -u -r1.8 imgILoader.idl
---- modules/libpr0n/public/imgILoader.idl 23 Mar 2002 13:21:27 -0000 1.8
-+++ modules/libpr0n/public/imgILoader.idl 17 Sep 2002 04:08:04 -0000
-@@ -48,6 +48,8 @@
- /**
- * Start the load and decode of an image.
- * @param aURI the URI to load
-+ * @param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
-+ * @param aReferrerURI the 'referring' URI
- * @param aLoadGroup Loadgroup to put the image load into
- * @param aObserver the observer
- * @param aCX some random data
-@@ -57,9 +59,14 @@
- * @param aRequest A newly created, unused imgIRequest object or NULL for one to
- be created for you.
- */
-- imgIRequest loadImage(in nsIURI aURI, in nsIURI parentURL, in nsILoadGroup aLoadGroup,
-- in imgIDecoderObserver aObserver, in nsISupports aCX,
-- in nsLoadFlags aLoadFlags, in nsISupports cacheKey,
-+ imgIRequest loadImage(in nsIURI aURI,
-+ in nsIURI aInitialDocumentURL,
-+ in nsIURI aReferrerURI,
-+ in nsILoadGroup aLoadGroup,
-+ in imgIDecoderObserver aObserver,
-+ in nsISupports aCX,
-+ in nsLoadFlags aLoadFlags,
-+ in nsISupports cacheKey,
- in imgIRequest aRequest);
-
- /**
-Index: modules/libpr0n/src/imgLoader.cpp
-===================================================================
-RCS file: /cvsroot/mozilla/modules/libpr0n/src/imgLoader.cpp,v
-retrieving revision 1.50
-diff -u -r1.50 imgLoader.cpp
---- modules/libpr0n/src/imgLoader.cpp 12 Sep 2002 08:42:39 -0000 1.50
-+++ modules/libpr0n/src/imgLoader.cpp 17 Sep 2002 04:08:04 -0000
-@@ -112,11 +112,18 @@
- return 1;
- }
-
--/* imgIRequest loadImage (in nsIURI aURI, in nsIURI parentURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest); */
-+/* imgIRequest loadImage (in nsIURI aURI, in nsIURI initialDocumentURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest); */
-
--NS_IMETHODIMP imgLoader::LoadImage(nsIURI *aURI, nsIURI *parentURI, nsILoadGroup *aLoadGroup,
-- imgIDecoderObserver *aObserver, nsISupports *aCX, nsLoadFlags aLoadFlags,
-- nsISupports *cacheKey, imgIRequest *aRequest, imgIRequest **_retval)
-+NS_IMETHODIMP imgLoader::LoadImage(nsIURI *aURI,
-+ nsIURI *initialDocumentURI,
-+ nsIURI *referrerURI,
-+ nsILoadGroup *aLoadGroup,
-+ imgIDecoderObserver *aObserver,
-+ nsISupports *aCX,
-+ nsLoadFlags aLoadFlags,
-+ nsISupports *cacheKey,
-+ imgIRequest *aRequest,
-+ imgIRequest **_retval)
- {
- NS_ASSERTION(aURI, "imgLoader::LoadImage -- NULL URI pointer");
-
-@@ -301,7 +308,7 @@
-
- nsCOMPtr<nsIHttpChannel> newHttpChannel = do_QueryInterface(newChannel);
- if (newHttpChannel) {
-- newHttpChannel->SetDocumentURI(parentURI);
-+ newHttpChannel->SetDocumentURI(initialDocumentURI);
- }
-
- if (aLoadGroup) {
-@@ -348,24 +355,8 @@
- nsCOMPtr<nsIHttpChannel> httpChannel(do_QueryInterface(newChannel));
-
- if (httpChannel) {
-- nsresult rv;
-- // Get the defloadRequest from the loadgroup
-- nsCOMPtr<nsIRequest> defLoadRequest;
-- rv = aLoadGroup->GetDefaultLoadRequest(getter_AddRefs(defLoadRequest));
--
-- if (NS_SUCCEEDED(rv) && defLoadRequest) {
-- nsCOMPtr<nsIChannel> reqChannel(do_QueryInterface(defLoadRequest));
--
-- if (reqChannel) {
-- // Get the referrer from the loadchannel
-- nsCOMPtr<nsIURI> referrer;
-- rv = reqChannel->GetURI(getter_AddRefs(referrer));
-- if (NS_SUCCEEDED(rv)) {
-- // Set the referrer
-- httpChannel->SetReferrer(referrer, nsIHttpChannel::REFERRER_INLINES);
-- }
-- }
-- }
-+ // Set the referrer
-+ httpChannel->SetReferrer(referrerURI, nsIHttpChannel::REFERRER_INLINES);
- }
- }
-
diff --git a/www/mozilla/files/patch-xpcom_reflect_xptcall_src_md_unix_xptc_platforms_unixish_x86.h b/www/mozilla/files/patch-xpcom_reflect_xptcall_src_md_unix_xptc_platforms_unixish_x86.h
deleted file mode 100644
index 2224e67cc95b..000000000000
--- a/www/mozilla/files/patch-xpcom_reflect_xptcall_src_md_unix_xptc_platforms_unixish_x86.h
+++ /dev/null
@@ -1,21 +0,0 @@
---- xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h.orig Fri Jun 21 01:12:40 2002
-+++ xpcom/reflect/xptcall/src/md/unix/xptc_platforms_unixish_x86.h Fri Jun 21 01:41:51 2002
-@@ -94,8 +94,16 @@
- * gcc is that the system gcc defines __FreeBSD_cc_version. This variable
- * can also identify the period of time that 4.0-CURRENT used thunks.
- */
--#if defined(__FreeBSD_cc_version) && \
-- (__FreeBSD_cc_version < 400002 || __FreeBSD_cc_version > 400003)
-+
-+/* It seems we need to use thunks in FreeBSD -CURRENT after gcc-3.1 was merged.
-+ * This solves a problem wherein regxpcom and/or regchrome would seg fault
-+ * after running for a while. This problem has also exhibited itself on
-+ * the alpha platform. Therefore, use thunks on all versions of
-+ * -CURRENT that are using gcc-3.1.
-+ */
-+#if defined(__FreeBSD_cc_version) && \
-+ (__FreeBSD_cc_version < 400002 || __FreeBSD_cc_version > 400003) && \
-+ (__FreeBSD_cc_version < 500003)
- #define CFRONT_STYLE_THIS_ADJUST
- #else
- #define THUNK_BASED_THIS_ADJUST
diff --git a/www/mozilla/pkg-descr.gtk2 b/www/mozilla/pkg-descr.gtk2
new file mode 100644
index 000000000000..d91ac6c1d832
--- /dev/null
+++ b/www/mozilla/pkg-descr.gtk2
@@ -0,0 +1,13 @@
+This is the current release of the Mozilla open source web browser. It should
+be fully compliant with all W3C standards, including HTML, CSS, XML, XSL,
+JavaScript, MathML, SVG and RDF. This version also supports SSL encryption,
+and Java with the use of the FreeBSD native Java plug-in.
+
+This is the latest release of the Mozilla browser. It contains all the
+bugfixes and security enhancements from the mozilla port as well as
+new new features.
+
+This version has been built with GTK+-2 bindings for use with applications
+such as Galeon 2.
+
+WWW: http://www.mozilla.org/