--- a/ChangeLog Fri Jun 23 23:15:31 2006 +0000
+++ b/ChangeLog Sat Jun 24 00:06:26 2006 +0000
@@ -1,3 +1,14 @@
+2006-06-23 Brian Cameron <[email protected]>
+
+ * gimp.spec: Bump to 2.3.9
+ * patches/gimp-04-fixcmpile.diff: Add new patch to fix compile
+ issues with new version.
+ * gedit.spec: Bump to 2.14.3.
+ * vte.spec: Bump to 0.12.2
+ * pathes/vte-02-glib.diff: Removed upstream patch and renamed
+ patches.
+ * gnome-terminal.spec: Bump to 2.14.2.
+
2006-06-23 Brian Cameron <[email protected]>
* blueprint.spec: Now use "cp -p" instead of "cp -a" so it works
--- a/gedit.spec Fri Jun 23 23:15:31 2006 +0000
+++ b/gedit.spec Sat Jun 24 00:06:26 2006 +0000
@@ -8,7 +8,7 @@
Name: gedit
License: GPL
Group: System/GUI/GNOME
-Version: 2.14.2
+Version: 2.14.3
Release: 1
Distribution: Java Desktop System
Vendor: Sun Microsystems, Inc.
@@ -145,6 +145,9 @@
%{_libdir}/pkgconfig/*
%changelog
+* Fri Jun 23 2006 - [email protected]
+- Bump to 2.14.3.
+
* Fri Jun 01 2006 - [email protected]
- Add menu entry patch.
--- a/gimp.spec Fri Jun 23 23:15:31 2006 +0000
+++ b/gimp.spec Sat Jun 24 00:06:26 2006 +0000
@@ -8,7 +8,7 @@
%define subver 2.3
%define subver_install 2.0
-%define microver 8
+%define microver 9
%define help_version 10
Name: gimp
@@ -23,8 +23,8 @@
Source1: ftp://ftp.gimp.org/pub/%{name}/help/gimp-help-2-0.%{help_version}.tar.gz
Patch1: gimp-01-menu-entry.diff
Patch2: gimp-02-Xext.diff
-Patch3: gimp-03-void-return.diff
-Patch4: gimp-04-hidden.diff
+Patch3: gimp-03-hidden.diff
+Patch4: gimp-04-fixcompile.diff
URL: http://www.gimp.org
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Docdir: %{_defaultdocdir}/doc
@@ -118,6 +118,7 @@
# Removing sierra driver on Solaris since it doesn't compile yet.
%ifos solaris
%define print_options "--disable-print"
+%define mmx_options "--enable-mmx=no"
%else
%define print_options ""
%endif
@@ -132,6 +133,7 @@
--enable-mp \
--enable-gtk-doc \
--enable-default-binary \
+ %{mmx_options} \
%{print_options}
make munix=
@@ -236,6 +238,10 @@
%{_mandir}/man1/gimptool-%{subver_install}.1*
%changelog
+* Fri Jun 23 2006 - [email protected]
+- Bump to 2.3.9. Set --enable-mmx=no when building on Solaris since
+ this compiler option doesn't work on Solaris
+
* Tue May 30 2006 - [email protected]
- Add patch, 04-hidden, for new G_GNUC_INTERNAL usage.
--- a/gnome-terminal.spec Fri Jun 23 23:15:31 2006 +0000
+++ b/gnome-terminal.spec Sat Jun 24 00:06:26 2006 +0000
@@ -8,7 +8,7 @@
Name: gnome-terminal
License: GPL
Group: System/GUI/GNOME
-Version: 2.14.1
+Version: 2.14.2
Release: 1
Distribution: Java Desktop System
Vendor: Sun Microsystems, Inc.
@@ -111,6 +111,9 @@
%{_mandir}/man1/*
%changelog
+* Fri Jun 23 2006 - [email protected]
+- Bump to 2.14.2.
+
* Fri May 05 2006 - [email protected]
- Move terminal to system tools rather than accessories.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gimp-03-hidden.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,479 @@
+--- gimp-2.3.8/libgimp/gimpchannel_pdb.h.orig 2006-05-31 08:31:34.172832000 +0100
++++ gimp-2.3.8/libgimp/gimpchannel_pdb.h 2006-05-31 08:32:20.386055000 +0100
+@@ -29,12 +29,12 @@
+ /* For information look into the C source or the html documentation */
+
+
+-gint32 _gimp_channel_new (gint32 image_ID,
++G_GNUC_INTERNAL gint32 _gimp_channel_new (gint32 image_ID,
+ gint width,
+ gint height,
+ const gchar *name,
+ gdouble opacity,
+- const GimpRGB *color) G_GNUC_INTERNAL;
++ const GimpRGB *color);
+ gint32 gimp_channel_new_from_component (gint32 image_ID,
+ GimpChannelType component,
+ const gchar *name);
+--- gimp-2.3.8/libgimp/gimpdrawable_pdb.h.orig 2006-05-31 08:31:34.179099000 +0100
++++ gimp-2.3.8/libgimp/gimpdrawable_pdb.h 2006-05-31 08:32:52.359135000 +0100
+@@ -95,15 +95,15 @@
+ GimpOffsetType fill_type,
+ gint offset_x,
+ gint offset_y);
+-gboolean _gimp_drawable_thumbnail (gint32 drawable_ID,
++G_GNUC_INTERNAL gboolean _gimp_drawable_thumbnail (gint32 drawable_ID,
+ gint width,
+ gint height,
+ gint *actual_width,
+ gint *actual_height,
+ gint *bpp,
+ gint *thumbnail_data_count,
+- guint8 **thumbnail_data) G_GNUC_INTERNAL;
+-gboolean _gimp_drawable_sub_thumbnail (gint32 drawable_ID,
++ guint8 **thumbnail_data);
++G_GNUC_INTERNAL gboolean _gimp_drawable_sub_thumbnail (gint32 drawable_ID,
+ gint src_x,
+ gint src_y,
+ gint src_width,
+@@ -114,7 +114,7 @@
+ gint *height,
+ gint *bpp,
+ gint *thumbnail_data_count,
+- guint8 **thumbnail_data) G_GNUC_INTERNAL;
++ guint8 **thumbnail_data);
+ gboolean gimp_drawable_foreground_extract (gint32 drawable_ID,
+ GimpForegroundExtractMode mode,
+ gint32 mask_ID);
+--- gimp-2.3.8/libgimp/gimpdrawablepreview.h.orig 2006-05-31 08:31:34.185227000 +0100
++++ gimp-2.3.8/libgimp/gimpdrawablepreview.h 2006-05-31 08:33:10.786246000 +0100
+@@ -69,15 +69,15 @@
+ const GimpPixelRgn *region);
+
+ /* for internal use only */
+-void _gimp_drawable_preview_area_draw_thumb (GimpPreviewArea *area,
++G_GNUC_INTERNAL void _gimp_drawable_preview_area_draw_thumb (GimpPreviewArea *area,
+ GimpDrawable *drawable,
+ gint width,
+- gint height) G_GNUC_INTERNAL;
+-gboolean _gimp_drawable_preview_get_bounds (GimpDrawable *drawable,
++ gint height);
++G_GNUC_INTERNAL gboolean _gimp_drawable_preview_get_bounds (GimpDrawable *drawable,
+ gint *xmin,
+ gint *ymin,
+ gint *xmax,
+- gint *ymax) G_GNUC_INTERNAL;
++ gint *ymax);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimp/gimpgimprc_pdb.h.orig 2006-05-31 08:31:34.191218000 +0100
++++ gimp-2.3.8/libgimp/gimpgimprc_pdb.h 2006-05-31 08:33:21.958084000 +0100
+@@ -36,7 +36,7 @@
+ gboolean gimp_get_monitor_resolution (gdouble *xres,
+ gdouble *yres);
+ gchar* gimp_get_theme_dir (void);
+-gchar* _gimp_get_color_configuration (void) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gchar* _gimp_get_color_configuration (void);
+ gchar* gimp_get_module_load_inhibit (void);
+
+
+--- gimp-2.3.8/libgimp/gimpimage_pdb.h.orig 2006-05-31 08:31:34.197315000 +0100
++++ gimp-2.3.8/libgimp/gimpimage_pdb.h 2006-05-31 08:33:48.503428000 +0100
+@@ -119,21 +119,21 @@
+ gint32 gimp_image_merge_down (gint32 image_ID,
+ gint32 merge_layer_ID,
+ GimpMergeType merge_type);
+-guint8* _gimp_image_get_colormap (gint32 image_ID,
+- gint *num_bytes) G_GNUC_INTERNAL;
+-gboolean _gimp_image_set_colormap (gint32 image_ID,
++G_GNUC_INTERNAL guint8* _gimp_image_get_colormap (gint32 image_ID,
++ gint *num_bytes);
++G_GNUC_INTERNAL gboolean _gimp_image_set_colormap (gint32 image_ID,
+ gint num_bytes,
+- const guint8 *colormap) G_GNUC_INTERNAL;
++ const guint8 *colormap);
+ gboolean gimp_image_clean_all (gint32 image_ID);
+ gboolean gimp_image_is_dirty (gint32 image_ID);
+-gboolean _gimp_image_thumbnail (gint32 image_ID,
++G_GNUC_INTERNAL gboolean _gimp_image_thumbnail (gint32 image_ID,
+ gint width,
+ gint height,
+ gint *actual_width,
+ gint *actual_height,
+ gint *bpp,
+ gint *thumbnail_data_count,
+- guint8 **thumbnail_data) G_GNUC_INTERNAL;
++ guint8 **thumbnail_data);
+ gint32 gimp_image_get_active_layer (gint32 image_ID);
+ gboolean gimp_image_set_active_layer (gint32 image_ID,
+ gint32 active_layer_ID);
+--- gimp-2.3.8/libgimp/gimplayer_pdb.h.orig 2006-05-31 08:31:34.203407000 +0100
++++ gimp-2.3.8/libgimp/gimplayer_pdb.h 2006-05-31 08:34:03.310615000 +0100
+@@ -29,17 +29,17 @@
+ /* For information look into the C source or the html documentation */
+
+
+-gint32 _gimp_layer_new (gint32 image_ID,
++G_GNUC_INTERNAL gint32 _gimp_layer_new (gint32 image_ID,
+ gint width,
+ gint height,
+ GimpImageType type,
+ const gchar *name,
+ gdouble opacity,
+- GimpLayerModeEffects mode) G_GNUC_INTERNAL;
++ GimpLayerModeEffects mode);
+ gint32 gimp_layer_new_from_drawable (gint32 drawable_ID,
+ gint32 dest_image_ID);
+-gint32 _gimp_layer_copy (gint32 layer_ID,
+- gboolean add_alpha) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gint32 _gimp_layer_copy (gint32 layer_ID,
++ gboolean add_alpha);
+ gboolean gimp_layer_add_alpha (gint32 layer_ID);
+ gboolean gimp_layer_scale (gint32 layer_ID,
+ gint new_width,
+--- gimp-2.3.8/libgimp/gimpplugin_pdb.h.orig 2006-05-31 08:31:34.209408000 +0100
++++ gimp-2.3.8/libgimp/gimpplugin_pdb.h 2006-05-31 08:34:19.674716000 +0100
+@@ -37,10 +37,10 @@
+ const gchar *menu_path);
+ gboolean gimp_plugin_menu_branch_register (const gchar *menu_path,
+ const gchar *menu_name);
+-gboolean _gimp_plugin_icon_register (const gchar *procedure_name,
++G_GNUC_INTERNAL gboolean _gimp_plugin_icon_register (const gchar *procedure_name,
+ GimpIconType icon_type,
+ gint icon_data_length,
+- const guint8 *icon_data) G_GNUC_INTERNAL;
++ const guint8 *icon_data);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimp/gimpproceduraldb_pdb.h.orig 2006-05-31 08:31:34.215361000 +0100
++++ gimp-2.3.8/libgimp/gimpproceduraldb_pdb.h 2006-05-31 08:34:43.587002000 +0100
+@@ -40,7 +40,7 @@
+ const gchar *proc_type,
+ gint *num_matches,
+ gchar ***procedure_names);
+-gboolean _gimp_procedural_db_proc_info (const gchar *procedure_name,
++G_GNUC_INTERNAL gboolean _gimp_procedural_db_proc_info (const gchar *procedure_name,
+ gchar **blurb,
+ gchar **help,
+ gchar **author,
+@@ -48,7 +48,7 @@
+ gchar **date,
+ GimpPDBProcType *proc_type,
+ gint *num_args,
+- gint *num_values) G_GNUC_INTERNAL;
++ gint *num_values);
+ gboolean gimp_procedural_db_proc_arg (const gchar *procedure_name,
+ gint arg_num,
+ GimpPDBArgType *arg_type,
+@@ -59,13 +59,13 @@
+ GimpPDBArgType *val_type,
+ gchar **val_name,
+ gchar **val_desc);
+-gboolean _gimp_procedural_db_get_data (const gchar *identifier,
++G_GNUC_INTERNAL gboolean _gimp_procedural_db_get_data (const gchar *identifier,
+ gint *bytes,
+- guint8 **data) G_GNUC_INTERNAL;
++ guint8 **data);
+ gint gimp_procedural_db_get_data_size (const gchar *identifier);
+-gboolean _gimp_procedural_db_set_data (const gchar *identifier,
++G_GNUC_INTERNAL gboolean _gimp_procedural_db_set_data (const gchar *identifier,
+ gint bytes,
+- const guint8 *data) G_GNUC_INTERNAL;
++ const guint8 *data);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimp/gimpprogress_pdb.h.orig 2006-05-31 08:31:34.226253000 +0100
++++ gimp-2.3.8/libgimp/gimpprogress_pdb.h 2006-05-31 08:35:10.993613000 +0100
+@@ -29,14 +29,14 @@
+ /* For information look into the C source or the html documentation */
+
+
+-gboolean _gimp_progress_init (const gchar *message,
+- gint32 gdisplay_ID) G_GNUC_INTERNAL;
+-gboolean _gimp_progress_update (gdouble percentage) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gboolean _gimp_progress_init (const gchar *message,
++ gint32 gdisplay_ID);
++G_GNUC_INTERNAL gboolean _gimp_progress_update (gdouble percentage);
+ gboolean gimp_progress_pulse (void);
+ gboolean gimp_progress_set_text (const gchar *message);
+ gint gimp_progress_get_window_handle (void);
+-gboolean _gimp_progress_install (const gchar *progress_callback) G_GNUC_INTERNAL;
+-gboolean _gimp_progress_uninstall (const gchar *progress_callback) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gboolean _gimp_progress_install (const gchar *progress_callback);
++G_GNUC_INTERNAL gboolean _gimp_progress_uninstall (const gchar *progress_callback);
+ gboolean gimp_progress_cancel (const gchar *progress_callback);
+
+
+--- gimp-2.3.8/libgimp/gimpselection_pdb.h.orig 2006-05-31 08:31:34.232238000 +0100
++++ gimp-2.3.8/libgimp/gimpselection_pdb.h 2006-05-31 08:35:23.030589000 +0100
+@@ -42,9 +42,9 @@
+ gboolean gimp_selection_translate (gint32 image_ID,
+ gint offx,
+ gint offy);
+-gint32 _gimp_selection_float (gint32 drawable_ID,
++G_GNUC_INTERNAL gint32 _gimp_selection_float (gint32 drawable_ID,
+ gint offx,
+- gint offy) G_GNUC_INTERNAL;
++ gint offy);
+ gboolean gimp_selection_invert (gint32 image_ID);
+ gboolean gimp_selection_sharpen (gint32 image_ID);
+ gboolean gimp_selection_all (gint32 image_ID);
+--- gimp-2.3.8/libgimp/gimptile.h.orig 2006-05-31 08:31:34.238191000 +0100
++++ gimp-2.3.8/libgimp/gimptile.h 2006-05-31 08:35:35.246477000 +0100
+@@ -53,7 +53,7 @@
+
+ /* private function */
+
+-void _gimp_tile_cache_flush_drawable (GimpDrawable *drawable) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL void _gimp_tile_cache_flush_drawable (GimpDrawable *drawable);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimp/gimpunit_pdb.h.orig 2006-05-31 08:31:34.244191000 +0100
++++ gimp-2.3.8/libgimp/gimpunit_pdb.h 2006-05-31 08:36:44.514563000 +0100
+@@ -29,25 +29,25 @@
+ /* For information look into the C source or the html documentation */
+
+
+-gint _gimp_unit_get_number_of_units (void) G_GNUC_INTERNAL;
+-gint _gimp_unit_get_number_of_built_in_units (void) G_GNUC_INTERNAL;
+-GimpUnit _gimp_unit_new (const gchar *identifier,
++G_GNUC_INTERNAL gint _gimp_unit_get_number_of_units (void);
++G_GNUC_INTERNAL gint _gimp_unit_get_number_of_built_in_units (void);
++G_GNUC_INTERNAL GimpUnit _gimp_unit_new (const gchar *identifier,
+ gdouble factor,
+ gint digits,
+ const gchar *symbol,
+ const gchar *abbreviation,
+ const gchar *singular,
+- const gchar *plural) G_GNUC_INTERNAL;
+-gboolean _gimp_unit_get_deletion_flag (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gboolean _gimp_unit_set_deletion_flag (GimpUnit unit_id,
+- gboolean deletion_flag) G_GNUC_INTERNAL;
+-gchar* _gimp_unit_get_identifier (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gdouble _gimp_unit_get_factor (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gint _gimp_unit_get_digits (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gchar* _gimp_unit_get_symbol (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gchar* _gimp_unit_get_abbreviation (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gchar* _gimp_unit_get_singular (GimpUnit unit_id) G_GNUC_INTERNAL;
+-gchar* _gimp_unit_get_plural (GimpUnit unit_id) G_GNUC_INTERNAL;
++ const gchar *plural);
++G_GNUC_INTERNAL gboolean _gimp_unit_get_deletion_flag (GimpUnit unit_id);
++G_GNUC_INTERNAL gboolean _gimp_unit_set_deletion_flag (GimpUnit unit_id,
++ gboolean deletion_flag);
++G_GNUC_INTERNAL gchar* _gimp_unit_get_identifier (GimpUnit unit_id);
++G_GNUC_INTERNAL gdouble _gimp_unit_get_factor (GimpUnit unit_id);
++G_GNUC_INTERNAL gint _gimp_unit_get_digits (GimpUnit unit_id);
++G_GNUC_INTERNAL gchar* _gimp_unit_get_symbol (GimpUnit unit_id);
++G_GNUC_INTERNAL gchar* _gimp_unit_get_abbreviation (GimpUnit unit_id);
++G_GNUC_INTERNAL gchar* _gimp_unit_get_singular (GimpUnit unit_id);
++G_GNUC_INTERNAL gchar* _gimp_unit_get_plural (GimpUnit unit_id);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimp/gimpunitcache.h.orig 2006-05-31 08:31:34.250152000 +0100
++++ gimp-2.3.8/libgimp/gimpunitcache.h 2006-05-31 08:37:52.665126000 +0100
+@@ -26,26 +26,26 @@
+ G_BEGIN_DECLS
+
+
+-gint _gimp_unit_cache_get_number_of_units (void) G_GNUC_INTERNAL;
+-gint _gimp_unit_cache_get_number_of_built_in_units (void) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gint _gimp_unit_cache_get_number_of_units (void);
++G_GNUC_INTERNAL gint _gimp_unit_cache_get_number_of_built_in_units (void);
+
+-GimpUnit _gimp_unit_cache_new (gchar *identifier,
++G_GNUC_INTERNAL GimpUnit _gimp_unit_cache_new (gchar *identifier,
+ gdouble factor,
+ gint digits,
+ gchar *symbol,
+ gchar *abbreviation,
+ gchar *singular,
+- gchar *plural) G_GNUC_INTERNAL;
+-gboolean _gimp_unit_cache_get_deletion_flag (GimpUnit unit) G_GNUC_INTERNAL;
+-void _gimp_unit_cache_set_deletion_flag (GimpUnit unit,
+- gboolean deletion_flag) G_GNUC_INTERNAL;
+-gdouble _gimp_unit_cache_get_factor (GimpUnit unit) G_GNUC_INTERNAL;
+-gint _gimp_unit_cache_get_digits (GimpUnit unit) G_GNUC_INTERNAL;
+-const gchar * _gimp_unit_cache_get_identifier (GimpUnit unit) G_GNUC_INTERNAL;
+-const gchar * _gimp_unit_cache_get_symbol (GimpUnit unit) G_GNUC_INTERNAL;
+-const gchar * _gimp_unit_cache_get_abbreviation (GimpUnit unit) G_GNUC_INTERNAL;
+-const gchar * _gimp_unit_cache_get_singular (GimpUnit unit) G_GNUC_INTERNAL;
+-const gchar * _gimp_unit_cache_get_plural (GimpUnit unit) G_GNUC_INTERNAL;
++ gchar *plural);
++G_GNUC_INTERNAL gboolean _gimp_unit_cache_get_deletion_flag (GimpUnit unit);
++G_GNUC_INTERNAL void _gimp_unit_cache_set_deletion_flag (GimpUnit unit,
++ gboolean deletion_flag);
++G_GNUC_INTERNAL gdouble _gimp_unit_cache_get_factor (GimpUnit unit);
++G_GNUC_INTERNAL gint _gimp_unit_cache_get_digits (GimpUnit unit);
++G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_identifier (GimpUnit unit);
++G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_symbol (GimpUnit unit);
++G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_abbreviation (GimpUnit unit);
++G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_singular (GimpUnit unit);
++G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_plural (GimpUnit unit);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimpbase/gimpreloc.h.orig 2006-05-31 08:31:34.256074000 +0100
++++ gimp-2.3.8/libgimpbase/gimpreloc.h 2006-05-31 08:39:05.386427000 +0100
+@@ -34,19 +34,19 @@
+ } GimpBinrelocInitError;
+
+
+-gboolean _gimp_reloc_init (GError **error) G_GNUC_INTERNAL;
+-gboolean _gimp_reloc_init_lib (GError **error) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gboolean _gimp_reloc_init (GError **error);
++G_GNUC_INTERNAL gboolean _gimp_reloc_init_lib (GError **error);
+
+-gchar * _gimp_reloc_find_exe (const gchar *default_exe) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_exe_dir (const gchar *default_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_prefix (const gchar *default_prefix) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_bin_dir (const gchar *default_bin_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_data_dir (const gchar *default_data_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_plugin_dir (const gchar *default_plugin_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_locale_dir (const gchar *default_locale_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_lib_dir (const gchar *default_lib_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_libexec_dir (const gchar *default_libexec_dir) G_GNUC_INTERNAL;
+-gchar * _gimp_reloc_find_etc_dir (const gchar *default_etc_dir) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_exe (const gchar *default_exe);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_exe_dir (const gchar *default_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_prefix (const gchar *default_prefix);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_bin_dir (const gchar *default_bin_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_data_dir (const gchar *default_data_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_plugin_dir (const gchar *default_plugin_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_locale_dir (const gchar *default_locale_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_lib_dir (const gchar *default_lib_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_libexec_dir (const gchar *default_libexec_dir);
++G_GNUC_INTERNAL gchar * _gimp_reloc_find_etc_dir (const gchar *default_etc_dir);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimpbase/gimpwire.h.orig 2006-05-31 08:31:34.262011000 +0100
++++ gimp-2.3.8/libgimpbase/gimpwire.h 2006-05-31 08:40:14.697618000 +0100
+@@ -81,54 +81,54 @@
+
+ void gimp_wire_destroy (GimpWireMessage *msg);
+
+-gboolean _gimp_wire_read_int32 (GIOChannel *channel,
++G_GNUC_INTERNAL gboolean _gimp_wire_read_int32 (GIOChannel *channel,
+ guint32 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_read_int16 (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_read_int16 (GIOChannel *channel,
+ guint16 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_read_int8 (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_read_int8 (GIOChannel *channel,
+ guint8 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_read_double (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_read_double (GIOChannel *channel,
+ gdouble *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_read_string (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_read_string (GIOChannel *channel,
+ gchar **data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_read_color (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_read_color (GIOChannel *channel,
+ GimpRGB *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_int32 (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_int32 (GIOChannel *channel,
+ const guint32 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_int16 (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_int16 (GIOChannel *channel,
+ const guint16 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_int8 (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_int8 (GIOChannel *channel,
+ const guint8 *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_double (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_double (GIOChannel *channel,
+ const gdouble *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_string (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_string (GIOChannel *channel,
+ gchar **data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
+-gboolean _gimp_wire_write_color (GIOChannel *channel,
++ gpointer user_data);
++G_GNUC_INTERNAL gboolean _gimp_wire_write_color (GIOChannel *channel,
+ const GimpRGB *data,
+ gint count,
+- gpointer user_data) G_GNUC_INTERNAL;
++ gpointer user_data);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimpthumb/gimpthumb-utils.h.orig 2006-05-31 08:31:34.267937000 +0100
++++ gimp-2.3.8/libgimpthumb/gimpthumb-utils.h 2006-05-31 08:40:30.265090000 +0100
+@@ -58,9 +58,9 @@
+
+
+ /* for internal use only */
+-void _gimp_thumbs_delete_others (const gchar *uri,
+- GimpThumbSize size) G_GNUC_INTERNAL;
+-gchar * _gimp_thumb_filename_from_uri (const gchar *uri) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL void _gimp_thumbs_delete_others (const gchar *uri,
++ GimpThumbSize size);
++G_GNUC_INTERNAL gchar * _gimp_thumb_filename_from_uri (const gchar *uri);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimpwidgets/gimpcolorarea.h.orig 2006-05-31 08:31:34.273879000 +0100
++++ gimp-2.3.8/libgimpwidgets/gimpcolorarea.h 2006-05-31 08:40:44.903501000 +0100
+@@ -90,14 +90,14 @@
+ gboolean draw_border);
+
+ /* only for private use in libgimpwidgets */
+-void _gimp_color_area_render_buf (GtkWidget *widget,
++G_GNUC_INTERNAL void _gimp_color_area_render_buf (GtkWidget *widget,
+ gboolean insensitive,
+ GimpColorAreaType type,
+ guchar *buf,
+ guint width,
+ guint height,
+ guint rowstride,
+- GimpRGB *color) G_GNUC_INTERNAL;
++ GimpRGB *color);
+
+
+ G_END_DECLS
+--- gimp-2.3.8/libgimpwidgets/gimphelpui.h.orig 2006-05-31 08:31:34.279797000 +0100
++++ gimp-2.3.8/libgimpwidgets/gimphelpui.h 2006-05-31 08:40:56.321738000 +0100
+@@ -28,7 +28,7 @@
+ /* For information look into the C source or the html documentation */
+
+
+-void _gimp_help_init (void) G_GNUC_INTERNAL;
++G_GNUC_INTERNAL void _gimp_help_init (void);
+
+ void gimp_help_enable_tooltips (void);
+ void gimp_help_disable_tooltips (void);
--- a/patches/gimp-03-void-return.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
---- gimp-2.3.8/app/core/gimpparamspecs.c.orig 2006-04-25 12:49:37.706995000 +0100
-+++ gimp-2.3.8/app/core/gimpparamspecs.c 2006-04-25 12:50:43.266988000 +0100
-@@ -2165,7 +2165,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT16_ARRAY (value));
-
-- return gimp_value_set_array (value, (const guint8 *) data,
-+ gimp_value_set_array (value, (const guint8 *) data,
- length * sizeof (gint16));
- }
-
-@@ -2176,7 +2176,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT16_ARRAY (value));
-
-- return gimp_value_set_static_array (value, (const guint8 *) data,
-+ gimp_value_set_static_array (value, (const guint8 *) data,
- length * sizeof (gint16));
- }
-
-@@ -2187,7 +2187,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT16_ARRAY (value));
-
-- return gimp_value_take_array (value, (guint8 *) data,
-+ gimp_value_take_array (value, (guint8 *) data,
- length * sizeof (gint16));
- }
-
-@@ -2290,7 +2290,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT32_ARRAY (value));
-
-- return gimp_value_set_array (value, (const guint8 *) data,
-+ gimp_value_set_array (value, (const guint8 *) data,
- length * sizeof (gint32));
- }
-
-@@ -2301,7 +2301,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT32_ARRAY (value));
-
-- return gimp_value_set_static_array (value, (const guint8 *) data,
-+ gimp_value_set_static_array (value, (const guint8 *) data,
- length * sizeof (gint32));
- }
-
-@@ -2312,7 +2312,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_INT32_ARRAY (value));
-
-- return gimp_value_take_array (value, (guint8 *) data,
-+ gimp_value_take_array (value, (guint8 *) data,
- length * sizeof (gint32));
- }
-
-@@ -2415,7 +2415,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_FLOAT_ARRAY (value));
-
-- return gimp_value_set_array (value, (const guint8 *) data,
-+ gimp_value_set_array (value, (const guint8 *) data,
- length * sizeof (gdouble));
- }
-
-@@ -2426,7 +2426,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_FLOAT_ARRAY (value));
-
-- return gimp_value_set_static_array (value, (const guint8 *) data,
-+ gimp_value_set_static_array (value, (const guint8 *) data,
- length * sizeof (gdouble));
- }
-
-@@ -2437,7 +2437,7 @@
- {
- g_return_if_fail (GIMP_VALUE_HOLDS_FLOAT_ARRAY (value));
-
-- return gimp_value_take_array (value, (guint8 *) data,
-+ gimp_value_take_array (value, (guint8 *) data,
- length * sizeof (gdouble));
- }
-
---- gimp-2.3.8/app/core/gimppickable.c.orig 2006-04-25 12:51:13.388608000 +0100
-+++ gimp-2.3.8/app/core/gimppickable.c 2006-04-25 12:51:20.602598000 +0100
-@@ -66,7 +66,7 @@
- pickable_iface = GIMP_PICKABLE_GET_INTERFACE (pickable);
-
- if (pickable_iface->flush)
-- return pickable_iface->flush (pickable);
-+ pickable_iface->flush (pickable);
- }
-
- GimpImage *
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gimp-04-fixcompile.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,37 @@
+--- gimp-2.3.9/libgimp/gimp.c-orig 2006-06-23 17:41:52.459680000 -0500
++++ gimp-2.3.9/libgimp/gimp.c 2006-06-23 17:43:27.010326000 -0500
+@@ -23,6 +23,7 @@
+
+ #define _POSIX_SOURCE /* all the sigaction stuff is POSIX */
+ #define _SVID_SOURCE /* except for SA_RESTART, it seems */
++#define __EXTENSIONS__
+
+ #include <errno.h>
+ #include <stdarg.h>
+--- gimp-2.3.9/app/main.c-orig 2006-06-23 17:51:04.746071000 -0500
++++ gimp-2.3.9/app/main.c 2006-06-23 17:51:12.581709000 -0500
+@@ -20,6 +20,7 @@
+
+ #define _POSIX_SOURCE /* all the sigaction stuff is POSIX */
+ #define _SVID_SOURCE /* except for SA_RESTART, it seems */
++#define __EXTENSIONS__
+
+ #include <stdio.h>
+ #include <stdlib.h>
+--- gimp-2.3.9/plug-ins/common/sel_gauss.c-orig 2006-06-23 18:01:30.251322000 -0500
++++ gimp-2.3.9/plug-ins/common/sel_gauss.c 2006-06-23 18:05:01.594896000 -0500
+@@ -713,9 +713,11 @@ matrixmult (const guchar *src,
+ has_alpha = has_alpha ? 1 : 0;
+
+ #define EXPAND(BYTES, ALPHA)\
+- if (bytes == BYTES && has_alpha == ALPHA)\
+- return matrixmult_int (src, dest, width, height, mat, numrad,\
+- BYTES, ALPHA, maxdelta, preview_mode);
++ if (bytes == BYTES && has_alpha == ALPHA) {\
++ matrixmult_int (src, dest, width, height, mat, numrad,\
++ BYTES, ALPHA, maxdelta, preview_mode);\
++ return;\
++ }
+ EXPAND (1, 0)
+ EXPAND (2, 1)
+ EXPAND (3, 0)
--- a/patches/gimp-04-hidden.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,479 +0,0 @@
---- gimp-2.3.8/libgimp/gimpchannel_pdb.h.orig 2006-05-31 08:31:34.172832000 +0100
-+++ gimp-2.3.8/libgimp/gimpchannel_pdb.h 2006-05-31 08:32:20.386055000 +0100
-@@ -29,12 +29,12 @@
- /* For information look into the C source or the html documentation */
-
-
--gint32 _gimp_channel_new (gint32 image_ID,
-+G_GNUC_INTERNAL gint32 _gimp_channel_new (gint32 image_ID,
- gint width,
- gint height,
- const gchar *name,
- gdouble opacity,
-- const GimpRGB *color) G_GNUC_INTERNAL;
-+ const GimpRGB *color);
- gint32 gimp_channel_new_from_component (gint32 image_ID,
- GimpChannelType component,
- const gchar *name);
---- gimp-2.3.8/libgimp/gimpdrawable_pdb.h.orig 2006-05-31 08:31:34.179099000 +0100
-+++ gimp-2.3.8/libgimp/gimpdrawable_pdb.h 2006-05-31 08:32:52.359135000 +0100
-@@ -95,15 +95,15 @@
- GimpOffsetType fill_type,
- gint offset_x,
- gint offset_y);
--gboolean _gimp_drawable_thumbnail (gint32 drawable_ID,
-+G_GNUC_INTERNAL gboolean _gimp_drawable_thumbnail (gint32 drawable_ID,
- gint width,
- gint height,
- gint *actual_width,
- gint *actual_height,
- gint *bpp,
- gint *thumbnail_data_count,
-- guint8 **thumbnail_data) G_GNUC_INTERNAL;
--gboolean _gimp_drawable_sub_thumbnail (gint32 drawable_ID,
-+ guint8 **thumbnail_data);
-+G_GNUC_INTERNAL gboolean _gimp_drawable_sub_thumbnail (gint32 drawable_ID,
- gint src_x,
- gint src_y,
- gint src_width,
-@@ -114,7 +114,7 @@
- gint *height,
- gint *bpp,
- gint *thumbnail_data_count,
-- guint8 **thumbnail_data) G_GNUC_INTERNAL;
-+ guint8 **thumbnail_data);
- gboolean gimp_drawable_foreground_extract (gint32 drawable_ID,
- GimpForegroundExtractMode mode,
- gint32 mask_ID);
---- gimp-2.3.8/libgimp/gimpdrawablepreview.h.orig 2006-05-31 08:31:34.185227000 +0100
-+++ gimp-2.3.8/libgimp/gimpdrawablepreview.h 2006-05-31 08:33:10.786246000 +0100
-@@ -69,15 +69,15 @@
- const GimpPixelRgn *region);
-
- /* for internal use only */
--void _gimp_drawable_preview_area_draw_thumb (GimpPreviewArea *area,
-+G_GNUC_INTERNAL void _gimp_drawable_preview_area_draw_thumb (GimpPreviewArea *area,
- GimpDrawable *drawable,
- gint width,
-- gint height) G_GNUC_INTERNAL;
--gboolean _gimp_drawable_preview_get_bounds (GimpDrawable *drawable,
-+ gint height);
-+G_GNUC_INTERNAL gboolean _gimp_drawable_preview_get_bounds (GimpDrawable *drawable,
- gint *xmin,
- gint *ymin,
- gint *xmax,
-- gint *ymax) G_GNUC_INTERNAL;
-+ gint *ymax);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimp/gimpgimprc_pdb.h.orig 2006-05-31 08:31:34.191218000 +0100
-+++ gimp-2.3.8/libgimp/gimpgimprc_pdb.h 2006-05-31 08:33:21.958084000 +0100
-@@ -36,7 +36,7 @@
- gboolean gimp_get_monitor_resolution (gdouble *xres,
- gdouble *yres);
- gchar* gimp_get_theme_dir (void);
--gchar* _gimp_get_color_configuration (void) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gchar* _gimp_get_color_configuration (void);
- gchar* gimp_get_module_load_inhibit (void);
-
-
---- gimp-2.3.8/libgimp/gimpimage_pdb.h.orig 2006-05-31 08:31:34.197315000 +0100
-+++ gimp-2.3.8/libgimp/gimpimage_pdb.h 2006-05-31 08:33:48.503428000 +0100
-@@ -119,21 +119,21 @@
- gint32 gimp_image_merge_down (gint32 image_ID,
- gint32 merge_layer_ID,
- GimpMergeType merge_type);
--guint8* _gimp_image_get_colormap (gint32 image_ID,
-- gint *num_bytes) G_GNUC_INTERNAL;
--gboolean _gimp_image_set_colormap (gint32 image_ID,
-+G_GNUC_INTERNAL guint8* _gimp_image_get_colormap (gint32 image_ID,
-+ gint *num_bytes);
-+G_GNUC_INTERNAL gboolean _gimp_image_set_colormap (gint32 image_ID,
- gint num_bytes,
-- const guint8 *colormap) G_GNUC_INTERNAL;
-+ const guint8 *colormap);
- gboolean gimp_image_clean_all (gint32 image_ID);
- gboolean gimp_image_is_dirty (gint32 image_ID);
--gboolean _gimp_image_thumbnail (gint32 image_ID,
-+G_GNUC_INTERNAL gboolean _gimp_image_thumbnail (gint32 image_ID,
- gint width,
- gint height,
- gint *actual_width,
- gint *actual_height,
- gint *bpp,
- gint *thumbnail_data_count,
-- guint8 **thumbnail_data) G_GNUC_INTERNAL;
-+ guint8 **thumbnail_data);
- gint32 gimp_image_get_active_layer (gint32 image_ID);
- gboolean gimp_image_set_active_layer (gint32 image_ID,
- gint32 active_layer_ID);
---- gimp-2.3.8/libgimp/gimplayer_pdb.h.orig 2006-05-31 08:31:34.203407000 +0100
-+++ gimp-2.3.8/libgimp/gimplayer_pdb.h 2006-05-31 08:34:03.310615000 +0100
-@@ -29,17 +29,17 @@
- /* For information look into the C source or the html documentation */
-
-
--gint32 _gimp_layer_new (gint32 image_ID,
-+G_GNUC_INTERNAL gint32 _gimp_layer_new (gint32 image_ID,
- gint width,
- gint height,
- GimpImageType type,
- const gchar *name,
- gdouble opacity,
-- GimpLayerModeEffects mode) G_GNUC_INTERNAL;
-+ GimpLayerModeEffects mode);
- gint32 gimp_layer_new_from_drawable (gint32 drawable_ID,
- gint32 dest_image_ID);
--gint32 _gimp_layer_copy (gint32 layer_ID,
-- gboolean add_alpha) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gint32 _gimp_layer_copy (gint32 layer_ID,
-+ gboolean add_alpha);
- gboolean gimp_layer_add_alpha (gint32 layer_ID);
- gboolean gimp_layer_scale (gint32 layer_ID,
- gint new_width,
---- gimp-2.3.8/libgimp/gimpplugin_pdb.h.orig 2006-05-31 08:31:34.209408000 +0100
-+++ gimp-2.3.8/libgimp/gimpplugin_pdb.h 2006-05-31 08:34:19.674716000 +0100
-@@ -37,10 +37,10 @@
- const gchar *menu_path);
- gboolean gimp_plugin_menu_branch_register (const gchar *menu_path,
- const gchar *menu_name);
--gboolean _gimp_plugin_icon_register (const gchar *procedure_name,
-+G_GNUC_INTERNAL gboolean _gimp_plugin_icon_register (const gchar *procedure_name,
- GimpIconType icon_type,
- gint icon_data_length,
-- const guint8 *icon_data) G_GNUC_INTERNAL;
-+ const guint8 *icon_data);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimp/gimpproceduraldb_pdb.h.orig 2006-05-31 08:31:34.215361000 +0100
-+++ gimp-2.3.8/libgimp/gimpproceduraldb_pdb.h 2006-05-31 08:34:43.587002000 +0100
-@@ -40,7 +40,7 @@
- const gchar *proc_type,
- gint *num_matches,
- gchar ***procedure_names);
--gboolean _gimp_procedural_db_proc_info (const gchar *procedure_name,
-+G_GNUC_INTERNAL gboolean _gimp_procedural_db_proc_info (const gchar *procedure_name,
- gchar **blurb,
- gchar **help,
- gchar **author,
-@@ -48,7 +48,7 @@
- gchar **date,
- GimpPDBProcType *proc_type,
- gint *num_args,
-- gint *num_values) G_GNUC_INTERNAL;
-+ gint *num_values);
- gboolean gimp_procedural_db_proc_arg (const gchar *procedure_name,
- gint arg_num,
- GimpPDBArgType *arg_type,
-@@ -59,13 +59,13 @@
- GimpPDBArgType *val_type,
- gchar **val_name,
- gchar **val_desc);
--gboolean _gimp_procedural_db_get_data (const gchar *identifier,
-+G_GNUC_INTERNAL gboolean _gimp_procedural_db_get_data (const gchar *identifier,
- gint *bytes,
-- guint8 **data) G_GNUC_INTERNAL;
-+ guint8 **data);
- gint gimp_procedural_db_get_data_size (const gchar *identifier);
--gboolean _gimp_procedural_db_set_data (const gchar *identifier,
-+G_GNUC_INTERNAL gboolean _gimp_procedural_db_set_data (const gchar *identifier,
- gint bytes,
-- const guint8 *data) G_GNUC_INTERNAL;
-+ const guint8 *data);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimp/gimpprogress_pdb.h.orig 2006-05-31 08:31:34.226253000 +0100
-+++ gimp-2.3.8/libgimp/gimpprogress_pdb.h 2006-05-31 08:35:10.993613000 +0100
-@@ -29,14 +29,14 @@
- /* For information look into the C source or the html documentation */
-
-
--gboolean _gimp_progress_init (const gchar *message,
-- gint32 gdisplay_ID) G_GNUC_INTERNAL;
--gboolean _gimp_progress_update (gdouble percentage) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gboolean _gimp_progress_init (const gchar *message,
-+ gint32 gdisplay_ID);
-+G_GNUC_INTERNAL gboolean _gimp_progress_update (gdouble percentage);
- gboolean gimp_progress_pulse (void);
- gboolean gimp_progress_set_text (const gchar *message);
- gint gimp_progress_get_window_handle (void);
--gboolean _gimp_progress_install (const gchar *progress_callback) G_GNUC_INTERNAL;
--gboolean _gimp_progress_uninstall (const gchar *progress_callback) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gboolean _gimp_progress_install (const gchar *progress_callback);
-+G_GNUC_INTERNAL gboolean _gimp_progress_uninstall (const gchar *progress_callback);
- gboolean gimp_progress_cancel (const gchar *progress_callback);
-
-
---- gimp-2.3.8/libgimp/gimpselection_pdb.h.orig 2006-05-31 08:31:34.232238000 +0100
-+++ gimp-2.3.8/libgimp/gimpselection_pdb.h 2006-05-31 08:35:23.030589000 +0100
-@@ -42,9 +42,9 @@
- gboolean gimp_selection_translate (gint32 image_ID,
- gint offx,
- gint offy);
--gint32 _gimp_selection_float (gint32 drawable_ID,
-+G_GNUC_INTERNAL gint32 _gimp_selection_float (gint32 drawable_ID,
- gint offx,
-- gint offy) G_GNUC_INTERNAL;
-+ gint offy);
- gboolean gimp_selection_invert (gint32 image_ID);
- gboolean gimp_selection_sharpen (gint32 image_ID);
- gboolean gimp_selection_all (gint32 image_ID);
---- gimp-2.3.8/libgimp/gimptile.h.orig 2006-05-31 08:31:34.238191000 +0100
-+++ gimp-2.3.8/libgimp/gimptile.h 2006-05-31 08:35:35.246477000 +0100
-@@ -53,7 +53,7 @@
-
- /* private function */
-
--void _gimp_tile_cache_flush_drawable (GimpDrawable *drawable) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL void _gimp_tile_cache_flush_drawable (GimpDrawable *drawable);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimp/gimpunit_pdb.h.orig 2006-05-31 08:31:34.244191000 +0100
-+++ gimp-2.3.8/libgimp/gimpunit_pdb.h 2006-05-31 08:36:44.514563000 +0100
-@@ -29,25 +29,25 @@
- /* For information look into the C source or the html documentation */
-
-
--gint _gimp_unit_get_number_of_units (void) G_GNUC_INTERNAL;
--gint _gimp_unit_get_number_of_built_in_units (void) G_GNUC_INTERNAL;
--GimpUnit _gimp_unit_new (const gchar *identifier,
-+G_GNUC_INTERNAL gint _gimp_unit_get_number_of_units (void);
-+G_GNUC_INTERNAL gint _gimp_unit_get_number_of_built_in_units (void);
-+G_GNUC_INTERNAL GimpUnit _gimp_unit_new (const gchar *identifier,
- gdouble factor,
- gint digits,
- const gchar *symbol,
- const gchar *abbreviation,
- const gchar *singular,
-- const gchar *plural) G_GNUC_INTERNAL;
--gboolean _gimp_unit_get_deletion_flag (GimpUnit unit_id) G_GNUC_INTERNAL;
--gboolean _gimp_unit_set_deletion_flag (GimpUnit unit_id,
-- gboolean deletion_flag) G_GNUC_INTERNAL;
--gchar* _gimp_unit_get_identifier (GimpUnit unit_id) G_GNUC_INTERNAL;
--gdouble _gimp_unit_get_factor (GimpUnit unit_id) G_GNUC_INTERNAL;
--gint _gimp_unit_get_digits (GimpUnit unit_id) G_GNUC_INTERNAL;
--gchar* _gimp_unit_get_symbol (GimpUnit unit_id) G_GNUC_INTERNAL;
--gchar* _gimp_unit_get_abbreviation (GimpUnit unit_id) G_GNUC_INTERNAL;
--gchar* _gimp_unit_get_singular (GimpUnit unit_id) G_GNUC_INTERNAL;
--gchar* _gimp_unit_get_plural (GimpUnit unit_id) G_GNUC_INTERNAL;
-+ const gchar *plural);
-+G_GNUC_INTERNAL gboolean _gimp_unit_get_deletion_flag (GimpUnit unit_id);
-+G_GNUC_INTERNAL gboolean _gimp_unit_set_deletion_flag (GimpUnit unit_id,
-+ gboolean deletion_flag);
-+G_GNUC_INTERNAL gchar* _gimp_unit_get_identifier (GimpUnit unit_id);
-+G_GNUC_INTERNAL gdouble _gimp_unit_get_factor (GimpUnit unit_id);
-+G_GNUC_INTERNAL gint _gimp_unit_get_digits (GimpUnit unit_id);
-+G_GNUC_INTERNAL gchar* _gimp_unit_get_symbol (GimpUnit unit_id);
-+G_GNUC_INTERNAL gchar* _gimp_unit_get_abbreviation (GimpUnit unit_id);
-+G_GNUC_INTERNAL gchar* _gimp_unit_get_singular (GimpUnit unit_id);
-+G_GNUC_INTERNAL gchar* _gimp_unit_get_plural (GimpUnit unit_id);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimp/gimpunitcache.h.orig 2006-05-31 08:31:34.250152000 +0100
-+++ gimp-2.3.8/libgimp/gimpunitcache.h 2006-05-31 08:37:52.665126000 +0100
-@@ -26,26 +26,26 @@
- G_BEGIN_DECLS
-
-
--gint _gimp_unit_cache_get_number_of_units (void) G_GNUC_INTERNAL;
--gint _gimp_unit_cache_get_number_of_built_in_units (void) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gint _gimp_unit_cache_get_number_of_units (void);
-+G_GNUC_INTERNAL gint _gimp_unit_cache_get_number_of_built_in_units (void);
-
--GimpUnit _gimp_unit_cache_new (gchar *identifier,
-+G_GNUC_INTERNAL GimpUnit _gimp_unit_cache_new (gchar *identifier,
- gdouble factor,
- gint digits,
- gchar *symbol,
- gchar *abbreviation,
- gchar *singular,
-- gchar *plural) G_GNUC_INTERNAL;
--gboolean _gimp_unit_cache_get_deletion_flag (GimpUnit unit) G_GNUC_INTERNAL;
--void _gimp_unit_cache_set_deletion_flag (GimpUnit unit,
-- gboolean deletion_flag) G_GNUC_INTERNAL;
--gdouble _gimp_unit_cache_get_factor (GimpUnit unit) G_GNUC_INTERNAL;
--gint _gimp_unit_cache_get_digits (GimpUnit unit) G_GNUC_INTERNAL;
--const gchar * _gimp_unit_cache_get_identifier (GimpUnit unit) G_GNUC_INTERNAL;
--const gchar * _gimp_unit_cache_get_symbol (GimpUnit unit) G_GNUC_INTERNAL;
--const gchar * _gimp_unit_cache_get_abbreviation (GimpUnit unit) G_GNUC_INTERNAL;
--const gchar * _gimp_unit_cache_get_singular (GimpUnit unit) G_GNUC_INTERNAL;
--const gchar * _gimp_unit_cache_get_plural (GimpUnit unit) G_GNUC_INTERNAL;
-+ gchar *plural);
-+G_GNUC_INTERNAL gboolean _gimp_unit_cache_get_deletion_flag (GimpUnit unit);
-+G_GNUC_INTERNAL void _gimp_unit_cache_set_deletion_flag (GimpUnit unit,
-+ gboolean deletion_flag);
-+G_GNUC_INTERNAL gdouble _gimp_unit_cache_get_factor (GimpUnit unit);
-+G_GNUC_INTERNAL gint _gimp_unit_cache_get_digits (GimpUnit unit);
-+G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_identifier (GimpUnit unit);
-+G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_symbol (GimpUnit unit);
-+G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_abbreviation (GimpUnit unit);
-+G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_singular (GimpUnit unit);
-+G_GNUC_INTERNAL const gchar * _gimp_unit_cache_get_plural (GimpUnit unit);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimpbase/gimpreloc.h.orig 2006-05-31 08:31:34.256074000 +0100
-+++ gimp-2.3.8/libgimpbase/gimpreloc.h 2006-05-31 08:39:05.386427000 +0100
-@@ -34,19 +34,19 @@
- } GimpBinrelocInitError;
-
-
--gboolean _gimp_reloc_init (GError **error) G_GNUC_INTERNAL;
--gboolean _gimp_reloc_init_lib (GError **error) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gboolean _gimp_reloc_init (GError **error);
-+G_GNUC_INTERNAL gboolean _gimp_reloc_init_lib (GError **error);
-
--gchar * _gimp_reloc_find_exe (const gchar *default_exe) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_exe_dir (const gchar *default_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_prefix (const gchar *default_prefix) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_bin_dir (const gchar *default_bin_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_data_dir (const gchar *default_data_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_plugin_dir (const gchar *default_plugin_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_locale_dir (const gchar *default_locale_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_lib_dir (const gchar *default_lib_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_libexec_dir (const gchar *default_libexec_dir) G_GNUC_INTERNAL;
--gchar * _gimp_reloc_find_etc_dir (const gchar *default_etc_dir) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_exe (const gchar *default_exe);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_exe_dir (const gchar *default_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_prefix (const gchar *default_prefix);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_bin_dir (const gchar *default_bin_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_data_dir (const gchar *default_data_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_plugin_dir (const gchar *default_plugin_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_locale_dir (const gchar *default_locale_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_lib_dir (const gchar *default_lib_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_libexec_dir (const gchar *default_libexec_dir);
-+G_GNUC_INTERNAL gchar * _gimp_reloc_find_etc_dir (const gchar *default_etc_dir);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimpbase/gimpwire.h.orig 2006-05-31 08:31:34.262011000 +0100
-+++ gimp-2.3.8/libgimpbase/gimpwire.h 2006-05-31 08:40:14.697618000 +0100
-@@ -81,54 +81,54 @@
-
- void gimp_wire_destroy (GimpWireMessage *msg);
-
--gboolean _gimp_wire_read_int32 (GIOChannel *channel,
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_int32 (GIOChannel *channel,
- guint32 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_read_int16 (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_int16 (GIOChannel *channel,
- guint16 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_read_int8 (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_int8 (GIOChannel *channel,
- guint8 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_read_double (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_double (GIOChannel *channel,
- gdouble *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_read_string (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_string (GIOChannel *channel,
- gchar **data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_read_color (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_read_color (GIOChannel *channel,
- GimpRGB *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_int32 (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_int32 (GIOChannel *channel,
- const guint32 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_int16 (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_int16 (GIOChannel *channel,
- const guint16 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_int8 (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_int8 (GIOChannel *channel,
- const guint8 *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_double (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_double (GIOChannel *channel,
- const gdouble *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_string (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_string (GIOChannel *channel,
- gchar **data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
--gboolean _gimp_wire_write_color (GIOChannel *channel,
-+ gpointer user_data);
-+G_GNUC_INTERNAL gboolean _gimp_wire_write_color (GIOChannel *channel,
- const GimpRGB *data,
- gint count,
-- gpointer user_data) G_GNUC_INTERNAL;
-+ gpointer user_data);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimpthumb/gimpthumb-utils.h.orig 2006-05-31 08:31:34.267937000 +0100
-+++ gimp-2.3.8/libgimpthumb/gimpthumb-utils.h 2006-05-31 08:40:30.265090000 +0100
-@@ -58,9 +58,9 @@
-
-
- /* for internal use only */
--void _gimp_thumbs_delete_others (const gchar *uri,
-- GimpThumbSize size) G_GNUC_INTERNAL;
--gchar * _gimp_thumb_filename_from_uri (const gchar *uri) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL void _gimp_thumbs_delete_others (const gchar *uri,
-+ GimpThumbSize size);
-+G_GNUC_INTERNAL gchar * _gimp_thumb_filename_from_uri (const gchar *uri);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimpwidgets/gimpcolorarea.h.orig 2006-05-31 08:31:34.273879000 +0100
-+++ gimp-2.3.8/libgimpwidgets/gimpcolorarea.h 2006-05-31 08:40:44.903501000 +0100
-@@ -90,14 +90,14 @@
- gboolean draw_border);
-
- /* only for private use in libgimpwidgets */
--void _gimp_color_area_render_buf (GtkWidget *widget,
-+G_GNUC_INTERNAL void _gimp_color_area_render_buf (GtkWidget *widget,
- gboolean insensitive,
- GimpColorAreaType type,
- guchar *buf,
- guint width,
- guint height,
- guint rowstride,
-- GimpRGB *color) G_GNUC_INTERNAL;
-+ GimpRGB *color);
-
-
- G_END_DECLS
---- gimp-2.3.8/libgimpwidgets/gimphelpui.h.orig 2006-05-31 08:31:34.279797000 +0100
-+++ gimp-2.3.8/libgimpwidgets/gimphelpui.h 2006-05-31 08:40:56.321738000 +0100
-@@ -28,7 +28,7 @@
- /* For information look into the C source or the html documentation */
-
-
--void _gimp_help_init (void) G_GNUC_INTERNAL;
-+G_GNUC_INTERNAL void _gimp_help_init (void);
-
- void gimp_help_enable_tooltips (void);
- void gimp_help_disable_tooltips (void);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-02-fcconfig.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,23 @@
+diff -urN vte-0.11.11.orig/src/vtefc.c vte-0.11.11/src/vtefc.c
+--- vte-0.11.11.orig/src/vtefc.c 2004-06-22 05:48:30.000000000 +0000
++++ vte-0.11.11/src/vtefc.c 2004-06-22 05:50:47.000000000 +0000
+@@ -465,8 +465,7 @@
+ tmp = FcFontRenderPrepare(NULL,
+ pattern,
+ fontset->fonts[i]);
+- _vte_fc_defaults_from_gtk(widget, tmp, antialias);
+- _vte_fc_set_antialias(tmp, antialias);
++ FcConfigSubstitute (NULL, tmp, FcMatchPattern);
+ save = FcPatternDuplicate(tmp);
+ FcPatternDestroy(tmp);
+ g_array_append_val(pattern_array, save);
+@@ -480,8 +479,7 @@
+ match = FcFontMatch(NULL, pattern, &result);
+ if (result == FcResultMatch) {
+ tmp = FcPatternDuplicate(match);
+- _vte_fc_defaults_from_gtk(widget, tmp, antialias);
+- _vte_fc_set_antialias(tmp, antialias);
++ FcConfigSubstitute (NULL, tmp, FcMatchPattern);
+ save = FcPatternDuplicate(tmp);
+ FcPatternDestroy(tmp);
+ g_array_append_val(pattern_array, save);
--- a/patches/vte-02-glib.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
---- vte-0.11.11/src/Makefile.am.orig Fri Jun 11 16:47:05 2004
-+++ vte-0.11.11/src/Makefile.am Fri Jun 11 16:47:16 2004
-@@ -187,7 +187,7 @@
- nativeecho_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ -DNATIVEECHO_MAIN
- nativeecho_SOURCES = \
- nativeecho.c
--nativeecho_LDADD = @LDFLAGS@ @LIBS@
-+nativeecho_LDADD = @LDFLAGS@ @LIBS@ @GLIB_LIBS@
-
- ring_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ -DRING_MAIN
- ring_SOURCES = \
--- a/patches/vte-03-fcconfig.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-diff -urN vte-0.11.11.orig/src/vtefc.c vte-0.11.11/src/vtefc.c
---- vte-0.11.11.orig/src/vtefc.c 2004-06-22 05:48:30.000000000 +0000
-+++ vte-0.11.11/src/vtefc.c 2004-06-22 05:50:47.000000000 +0000
-@@ -465,8 +465,7 @@
- tmp = FcFontRenderPrepare(NULL,
- pattern,
- fontset->fonts[i]);
-- _vte_fc_defaults_from_gtk(widget, tmp, antialias);
-- _vte_fc_set_antialias(tmp, antialias);
-+ FcConfigSubstitute (NULL, tmp, FcMatchPattern);
- save = FcPatternDuplicate(tmp);
- FcPatternDestroy(tmp);
- g_array_append_val(pattern_array, save);
-@@ -480,8 +479,7 @@
- match = FcFontMatch(NULL, pattern, &result);
- if (result == FcResultMatch) {
- tmp = FcPatternDuplicate(match);
-- _vte_fc_defaults_from_gtk(widget, tmp, antialias);
-- _vte_fc_set_antialias(tmp, antialias);
-+ FcConfigSubstitute (NULL, tmp, FcMatchPattern);
- save = FcPatternDuplicate(tmp);
- FcPatternDestroy(tmp);
- g_array_append_val(pattern_array, save);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-03-inputmethod-spotlocation.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,11 @@
+--- vte-0.11.11.orig/src/vte.c 2004-08-13 09:17:54.243942000 -0700
++++ vte-0.11.11/src/vte.c 2004-08-13 09:38:04.563039000 -0700
+@@ -7692,7 +7692,7 @@
+ rect.width = terminal->char_width;
+ rect.y = (terminal->pvt->screen->cursor_current.row -
+ terminal->pvt->screen->scroll_delta) *
+- terminal->char_height + VTE_PAD_WIDTH;
++ terminal->char_height + VTE_PAD_WIDTH + terminal->char_height;
+ rect.height = terminal->char_height;
+ gtk_im_context_set_cursor_location(terminal->pvt->im_context,
+ &rect);
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-04-cut-copy-paste-handle.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,73 @@
+--- vte-0.11.11/src/vte.c 2004-09-21 15:06:22.000000000 +0530
++++ vte-0.11.11-new/src/vte.c 2004-09-21 15:22:35.000000000 +0530
+@@ -14168,6 +14168,7 @@ vte_terminal_class_init(VteTerminalClass
+ {
+ GObjectClass *gobject_class;
+ GtkWidgetClass *widget_class;
++ GtkBindingSet *binding_set;
+
+ #ifdef VTE_DEBUG
+ if (_vte_debug_on(VTE_DEBUG_LIFECYCLE)) {
+@@ -14233,6 +14234,8 @@ vte_terminal_class_init(VteTerminalClass
+ klass->text_inserted = NULL;
+ klass->text_deleted = NULL;
+ klass->text_scrolled = NULL;
++ klass->copy_clipboard = vte_terminal_copy_clipboard;
++ klass->paste_clipboard = vte_terminal_paste_clipboard;
+
+ /* Register some signals of our own. */
+ klass->eof_signal =
+@@ -14479,6 +14482,32 @@ vte_terminal_class_init(VteTerminalClass
+ _vte_marshal_VOID__INT,
+ G_TYPE_NONE, 1, G_TYPE_INT);
+
++ klass->copy_clipboard_signal =
++ g_signal_new("copy-clipboard",
++ G_OBJECT_CLASS_TYPE(klass),
++ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
++ G_STRUCT_OFFSET(VteTerminalClass, copy_clipboard),
++ NULL,
++ NULL,
++ _vte_marshal_VOID__VOID,
++ G_TYPE_NONE, 0);
++
++ klass->paste_clipboard_signal =
++ g_signal_new("paste-clipboard",
++ G_OBJECT_CLASS_TYPE(klass),
++ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
++ G_STRUCT_OFFSET(VteTerminalClass, paste_clipboard),
++ NULL,
++ NULL,
++ _vte_marshal_VOID__VOID,
++ G_TYPE_NONE, 0);
++
++ /* Bind Copy, Paste, Cut keys */
++ binding_set = gtk_binding_set_by_class(klass);
++ gtk_binding_entry_add_signal(binding_set, GDK_F16, 0, "copy-clipboard", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_F18, 0, "paste-clipboard", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_F20, 0, "copy-clipboard", 0);
++
+ #ifdef VTE_DEBUG
+ /* Turn on debugging if we were asked to. */
+ if (getenv("VTE_DEBUG_FLAGS") != NULL) {
+--- vte-0.11.11/src/vte.h 2004-09-21 15:06:26.000000000 +0530
++++ vte-0.11.11-new/src/vte.h 2004-09-21 15:18:48.000000000 +0530
+@@ -95,6 +95,8 @@ struct _VteTerminalClass {
+ void (*text_inserted)(VteTerminal* terminal);
+ void (*text_deleted)(VteTerminal* terminal);
+ void (*text_scrolled)(VteTerminal* terminal, gint delta);
++ void (*copy_clipboard)(VteTerminal* terminal);
++ void (*paste_clipboard)(VteTerminal* terminal);
+
+ /* Padding for future expansion. */
+ void (*vte_reserved1)(void);
+@@ -137,6 +139,9 @@ struct _VteTerminalClass {
+ guint text_deleted_signal;
+ guint text_scrolled_signal;
+
++ guint copy_clipboard_signal;
++ guint paste_clipboard_signal;
++
+ guint reserved1;
+ guint reserved2;
+ guint reserved3;
--- a/patches/vte-04-inputmethod-spotlocation.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
---- vte-0.11.11.orig/src/vte.c 2004-08-13 09:17:54.243942000 -0700
-+++ vte-0.11.11/src/vte.c 2004-08-13 09:38:04.563039000 -0700
-@@ -7692,7 +7692,7 @@
- rect.width = terminal->char_width;
- rect.y = (terminal->pvt->screen->cursor_current.row -
- terminal->pvt->screen->scroll_delta) *
-- terminal->char_height + VTE_PAD_WIDTH;
-+ terminal->char_height + VTE_PAD_WIDTH + terminal->char_height;
- rect.height = terminal->char_height;
- gtk_im_context_set_cursor_location(terminal->pvt->im_context,
- &rect);
--- a/patches/vte-05-cut-copy-paste-handle.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
---- vte-0.11.11/src/vte.c 2004-09-21 15:06:22.000000000 +0530
-+++ vte-0.11.11-new/src/vte.c 2004-09-21 15:22:35.000000000 +0530
-@@ -14168,6 +14168,7 @@ vte_terminal_class_init(VteTerminalClass
- {
- GObjectClass *gobject_class;
- GtkWidgetClass *widget_class;
-+ GtkBindingSet *binding_set;
-
- #ifdef VTE_DEBUG
- if (_vte_debug_on(VTE_DEBUG_LIFECYCLE)) {
-@@ -14233,6 +14234,8 @@ vte_terminal_class_init(VteTerminalClass
- klass->text_inserted = NULL;
- klass->text_deleted = NULL;
- klass->text_scrolled = NULL;
-+ klass->copy_clipboard = vte_terminal_copy_clipboard;
-+ klass->paste_clipboard = vte_terminal_paste_clipboard;
-
- /* Register some signals of our own. */
- klass->eof_signal =
-@@ -14479,6 +14482,32 @@ vte_terminal_class_init(VteTerminalClass
- _vte_marshal_VOID__INT,
- G_TYPE_NONE, 1, G_TYPE_INT);
-
-+ klass->copy_clipboard_signal =
-+ g_signal_new("copy-clipboard",
-+ G_OBJECT_CLASS_TYPE(klass),
-+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
-+ G_STRUCT_OFFSET(VteTerminalClass, copy_clipboard),
-+ NULL,
-+ NULL,
-+ _vte_marshal_VOID__VOID,
-+ G_TYPE_NONE, 0);
-+
-+ klass->paste_clipboard_signal =
-+ g_signal_new("paste-clipboard",
-+ G_OBJECT_CLASS_TYPE(klass),
-+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
-+ G_STRUCT_OFFSET(VteTerminalClass, paste_clipboard),
-+ NULL,
-+ NULL,
-+ _vte_marshal_VOID__VOID,
-+ G_TYPE_NONE, 0);
-+
-+ /* Bind Copy, Paste, Cut keys */
-+ binding_set = gtk_binding_set_by_class(klass);
-+ gtk_binding_entry_add_signal(binding_set, GDK_F16, 0, "copy-clipboard", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_F18, 0, "paste-clipboard", 0);
-+ gtk_binding_entry_add_signal(binding_set, GDK_F20, 0, "copy-clipboard", 0);
-+
- #ifdef VTE_DEBUG
- /* Turn on debugging if we were asked to. */
- if (getenv("VTE_DEBUG_FLAGS") != NULL) {
---- vte-0.11.11/src/vte.h 2004-09-21 15:06:26.000000000 +0530
-+++ vte-0.11.11-new/src/vte.h 2004-09-21 15:18:48.000000000 +0530
-@@ -95,6 +95,8 @@ struct _VteTerminalClass {
- void (*text_inserted)(VteTerminal* terminal);
- void (*text_deleted)(VteTerminal* terminal);
- void (*text_scrolled)(VteTerminal* terminal, gint delta);
-+ void (*copy_clipboard)(VteTerminal* terminal);
-+ void (*paste_clipboard)(VteTerminal* terminal);
-
- /* Padding for future expansion. */
- void (*vte_reserved1)(void);
-@@ -137,6 +139,9 @@ struct _VteTerminalClass {
- guint text_deleted_signal;
- guint text_scrolled_signal;
-
-+ guint copy_clipboard_signal;
-+ guint paste_clipboard_signal;
-+
- guint reserved1;
- guint reserved2;
- guint reserved3;
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-05-update-logout-record.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,90 @@
+diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-pty-helper.c vte-0.11.11/gnome-pty-helper/gnome-pty-helper.c
+--- vte-0.11.11-old/gnome-pty-helper/gnome-pty-helper.c 2004-10-08 03:27:57.000000000 -0700
++++ vte-0.11.11/gnome-pty-helper/gnome-pty-helper.c 2004-10-08 03:28:15.000000000 -0700
+@@ -66,6 +66,7 @@ static char login_name_buffer [48];
+ static char *login_name, *display_name;
+
+ struct pty_info {
++ char *login_name;
+ struct pty_info *next;
+ char *line;
+ void *data;
+@@ -220,6 +221,7 @@ pty_remove (pty_info *pi)
+ else
+ last->next = pi->next;
+ free (pi->line);
++ free (pi->login_name);
+ pty_free (pi);
+ return;
+ }
+@@ -234,7 +236,7 @@ shutdown_pty (pty_info *pi)
+ {
+ if (pi->utmp || pi->wtmp || pi->lastlog)
+ if (pi->data)
+- write_logout_record (pi->data, pi->utmp, pi->wtmp);
++ write_logout_record (pi->login_name, pi->data, pi->utmp, pi->wtmp);
+
+ pty_remove (pi);
+ }
+@@ -249,7 +251,7 @@ shutdown_helper (void)
+ }
+
+ static pty_info *
+-pty_add (int utmp, int wtmp, int lastlog, char *line)
++pty_add (int utmp, int wtmp, int lastlog, char *line, char *login_name)
+ {
+ pty_info *pi = malloc (sizeof (pty_info));
+
+@@ -274,6 +276,7 @@ pty_add (int utmp, int wtmp, int lastlog
+ pi->utmp = utmp;
+ pi->wtmp = wtmp;
+ pi->lastlog = lastlog;
++ pi->login_name = strdup (login_name);
+
+ pty_list = pi;
+
+@@ -523,7 +526,7 @@ open_ptys (int utmp, int wtmp, int lastl
+ /* revoke(term_name); */
+
+ /* add pty to the list of allocated by us */
+- p = pty_add (utmp, wtmp, lastlog, term_name);
++ p = pty_add (utmp, wtmp, lastlog, term_name, login_name);
+ result = 1;
+
+ if (n_write (STDIN_FILENO, &result, sizeof (result)) != sizeof (result) ||
+diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-pty.h vte-0.11.11/gnome-pty-helper/gnome-pty.h
+--- vte-0.11.11-old/gnome-pty-helper/gnome-pty.h 2004-10-08 03:27:57.000000000 -0700
++++ vte-0.11.11/gnome-pty-helper/gnome-pty.h 2004-10-08 03:28:15.000000000 -0700
+@@ -16,6 +16,6 @@ typedef enum {
+
+ void *update_dbs (int utmp, int wtmp, int lastlog, char *login_name, char *display_name, char *term_name);
+ void *write_login_record (char *login_name, char *display_name, char *term_name, int utmp, int wtmp, int lastlog);
+-void write_logout_record (void *data, int utmp, int wtmp);
++void write_logout_record (char *login_name, void *data, int utmp, int wtmp);
+
+ #endif
+diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-utmp.c vte-0.11.11/gnome-pty-helper/gnome-utmp.c
+--- vte-0.11.11-old/gnome-pty-helper/gnome-utmp.c 2004-10-08 03:27:57.000000000 -0700
++++ vte-0.11.11/gnome-pty-helper/gnome-utmp.c 2004-10-08 03:28:15.000000000 -0700
+@@ -230,7 +230,7 @@ update_lastlog(char* login_name, UTMP *u
+ #endif /* HAVE_LASTLOG */
+
+ void
+-write_logout_record (void *data, int utmp, int wtmp)
++write_logout_record (char *login_name, void *data, int utmp, int wtmp)
+ {
+ UTMP put, *ut = data;
+
+@@ -251,6 +251,12 @@ write_logout_record (void *data, int utm
+ time (&put.ut_time);
+ #endif
+
++#if defined(HAVE_UT_UT_NAME)
++ strncpy (put.ut_name, login_name, sizeof (put.ut_name));
++#elif defined(HAVE_UT_UT_USER)
++ strncpy (put.ut_user, login_name, sizeof (put.ut_user));
++#endif
++
+ if (utmp)
+ update_utmp (&put);
+
--- a/patches/vte-06-update-logout-record.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-pty-helper.c vte-0.11.11/gnome-pty-helper/gnome-pty-helper.c
---- vte-0.11.11-old/gnome-pty-helper/gnome-pty-helper.c 2004-10-08 03:27:57.000000000 -0700
-+++ vte-0.11.11/gnome-pty-helper/gnome-pty-helper.c 2004-10-08 03:28:15.000000000 -0700
-@@ -66,6 +66,7 @@ static char login_name_buffer [48];
- static char *login_name, *display_name;
-
- struct pty_info {
-+ char *login_name;
- struct pty_info *next;
- char *line;
- void *data;
-@@ -220,6 +221,7 @@ pty_remove (pty_info *pi)
- else
- last->next = pi->next;
- free (pi->line);
-+ free (pi->login_name);
- pty_free (pi);
- return;
- }
-@@ -234,7 +236,7 @@ shutdown_pty (pty_info *pi)
- {
- if (pi->utmp || pi->wtmp || pi->lastlog)
- if (pi->data)
-- write_logout_record (pi->data, pi->utmp, pi->wtmp);
-+ write_logout_record (pi->login_name, pi->data, pi->utmp, pi->wtmp);
-
- pty_remove (pi);
- }
-@@ -249,7 +251,7 @@ shutdown_helper (void)
- }
-
- static pty_info *
--pty_add (int utmp, int wtmp, int lastlog, char *line)
-+pty_add (int utmp, int wtmp, int lastlog, char *line, char *login_name)
- {
- pty_info *pi = malloc (sizeof (pty_info));
-
-@@ -274,6 +276,7 @@ pty_add (int utmp, int wtmp, int lastlog
- pi->utmp = utmp;
- pi->wtmp = wtmp;
- pi->lastlog = lastlog;
-+ pi->login_name = strdup (login_name);
-
- pty_list = pi;
-
-@@ -523,7 +526,7 @@ open_ptys (int utmp, int wtmp, int lastl
- /* revoke(term_name); */
-
- /* add pty to the list of allocated by us */
-- p = pty_add (utmp, wtmp, lastlog, term_name);
-+ p = pty_add (utmp, wtmp, lastlog, term_name, login_name);
- result = 1;
-
- if (n_write (STDIN_FILENO, &result, sizeof (result)) != sizeof (result) ||
-diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-pty.h vte-0.11.11/gnome-pty-helper/gnome-pty.h
---- vte-0.11.11-old/gnome-pty-helper/gnome-pty.h 2004-10-08 03:27:57.000000000 -0700
-+++ vte-0.11.11/gnome-pty-helper/gnome-pty.h 2004-10-08 03:28:15.000000000 -0700
-@@ -16,6 +16,6 @@ typedef enum {
-
- void *update_dbs (int utmp, int wtmp, int lastlog, char *login_name, char *display_name, char *term_name);
- void *write_login_record (char *login_name, char *display_name, char *term_name, int utmp, int wtmp, int lastlog);
--void write_logout_record (void *data, int utmp, int wtmp);
-+void write_logout_record (char *login_name, void *data, int utmp, int wtmp);
-
- #endif
-diff -pNaur vte-0.11.11-old/gnome-pty-helper/gnome-utmp.c vte-0.11.11/gnome-pty-helper/gnome-utmp.c
---- vte-0.11.11-old/gnome-pty-helper/gnome-utmp.c 2004-10-08 03:27:57.000000000 -0700
-+++ vte-0.11.11/gnome-pty-helper/gnome-utmp.c 2004-10-08 03:28:15.000000000 -0700
-@@ -230,7 +230,7 @@ update_lastlog(char* login_name, UTMP *u
- #endif /* HAVE_LASTLOG */
-
- void
--write_logout_record (void *data, int utmp, int wtmp)
-+write_logout_record (char *login_name, void *data, int utmp, int wtmp)
- {
- UTMP put, *ut = data;
-
-@@ -251,6 +251,12 @@ write_logout_record (void *data, int utm
- time (&put.ut_time);
- #endif
-
-+#if defined(HAVE_UT_UT_NAME)
-+ strncpy (put.ut_name, login_name, sizeof (put.ut_name));
-+#elif defined(HAVE_UT_UT_USER)
-+ strncpy (put.ut_user, login_name, sizeof (put.ut_user));
-+#endif
-+
- if (utmp)
- update_utmp (&put);
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-06-utf8-ambiguous.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,17 @@
+diff -urN vte-0.11.11.orig/src/iso2022.c vte-0.11.11.ambiguous/src/iso2022.c
+--- vte-0.11.11.orig/src/iso2022.c 2004-06-22 05:48:30.000000000 +0000
++++ vte-0.11.11.ambiguous/src/iso2022.c 2004-10-09 09:06:30.000000000 +0000
+@@ -402,6 +402,13 @@
+ }
+ }
+
++ /*
++ * Decide the ambiguous width according to the default region if
++ * current locale is UTF-8.
++ */
++ if (strcmp (codeset, "utf8") == 0)
++ return _vte_iso2022_ambiguous_width_guess ();
++
+ /* Not in the list => not wide. */
+ return 1;
+ }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-07-g11n-word-char.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,14 @@
+--- vte-0.11.11/src/vte.c.orig 2005-03-16 13:17:14.569905224 +0900
++++ vte-0.11.11/src/vte.c 2005-03-16 13:18:51.293589734 +0900
+@@ -8615,7 +8615,10 @@ vte_terminal_is_word_char(VteTerminal *t
+ }
+ }
+ /* Default. */
+- return FALSE;
++ return (c >= 0xa0) &&
++ g_unichar_isgraph(c) &&
++ !g_unichar_ispunct(c) &&
++ !g_unichar_isspace(c);
+ }
+
+ /* Check if the characters in the given block are in the same class (word vs.
--- a/patches/vte-07-utf8-ambiguous.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-diff -urN vte-0.11.11.orig/src/iso2022.c vte-0.11.11.ambiguous/src/iso2022.c
---- vte-0.11.11.orig/src/iso2022.c 2004-06-22 05:48:30.000000000 +0000
-+++ vte-0.11.11.ambiguous/src/iso2022.c 2004-10-09 09:06:30.000000000 +0000
-@@ -402,6 +402,13 @@
- }
- }
-
-+ /*
-+ * Decide the ambiguous width according to the default region if
-+ * current locale is UTF-8.
-+ */
-+ if (strcmp (codeset, "utf8") == 0)
-+ return _vte_iso2022_ambiguous_width_guess ();
-+
- /* Not in the list => not wide. */
- return 1;
- }
--- a/patches/vte-08-g11n-word-char.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
---- vte-0.11.11/src/vte.c.orig 2005-03-16 13:17:14.569905224 +0900
-+++ vte-0.11.11/src/vte.c 2005-03-16 13:18:51.293589734 +0900
-@@ -8615,7 +8615,10 @@ vte_terminal_is_word_char(VteTerminal *t
- }
- }
- /* Default. */
-- return FALSE;
-+ return (c >= 0xa0) &&
-+ g_unichar_isgraph(c) &&
-+ !g_unichar_ispunct(c) &&
-+ !g_unichar_isspace(c);
- }
-
- /* Check if the characters in the given block are in the same class (word vs.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-08-get-text.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,113 @@
+Index: vte/src/vteaccess.c
+===================================================================
+RCS file: /cvs/gnome/vte/src/vteaccess.c,v
+retrieving revision 1.44
+diff -u -p -r1.44 vteaccess.c
+--- vte/src/vteaccess.c 1 May 2004 07:12:51 -0000 1.44
++++ vte/src/vteaccess.c 27 Oct 2004 12:53:25 -0000
+@@ -1005,7 +1027,6 @@ vte_terminal_accessible_get_text_somewhe
+ priv->snapshot_attributes->len);
+ break;
+ case ATK_TEXT_BOUNDARY_WORD_START:
+- case ATK_TEXT_BOUNDARY_WORD_END:
+ /* Back up to the previous non-word-word transition. */
+ while (offset > 0) {
+ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
+@@ -1072,6 +1093,97 @@ vte_terminal_accessible_get_text_somewhe
+ }
+
+ }
++ /* Now find the next non-word-word transition */
++ while (offset < priv->snapshot_characters->len) {
++ next = vte_terminal_accessible_get_character_at_offset(text, offset);
++ if (!vte_terminal_is_word_char(terminal, next)) {
++ offset++;
++ } else {
++ break;
++ }
++ }
++ *end_offset = offset;
++ break;
++ case ATK_TEXT_BOUNDARY_WORD_END:
++ /* Back up to the previous word-non-word transition. */
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ while (offset > 0) {
++ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
++ if (vte_terminal_is_word_char(terminal, prev) &&
++ !vte_terminal_is_word_char(terminal, current)) {
++ break;
++ } else {
++ offset--;
++ current = prev;
++ }
++ }
++ *start_offset = offset;
++ /* If we're looking for the word end before this one,
++ * keep searching by backing up to the previous word
++ * character and then searching for the word-end
++ * before that. */
++ if (direction == direction_previous) {
++ while (offset > 0) {
++ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
++ if (vte_terminal_is_word_char(terminal, prev)) {
++ offset--;
++ } else {
++ break;
++ }
++ }
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ while (offset > 0) {
++ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
++ if (vte_terminal_is_word_char(terminal, prev) &&
++ !vte_terminal_is_word_char(terminal, current)) {
++ break;
++ } else {
++ offset--;
++ current = prev;
++ }
++ }
++ *start_offset = offset;
++ }
++ /* If we're looking for the word end after this one,
++ * search forward by scanning forward for the next
++ * word character, then the next non-word character
++ * after that. */
++ if (direction == direction_next) {
++ while (offset < priv->snapshot_characters->len) {
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ if (!vte_terminal_is_word_char(terminal, current)) {
++ offset++;
++ } else {
++ break;
++ }
++ }
++ while (offset < priv->snapshot_characters->len) {
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ if (vte_terminal_is_word_char(terminal, current)) {
++ offset++;
++ } else {
++ break;
++ }
++ }
++ *start_offset = offset;
++ }
++ /* Now find the next word end. */
++ while (offset < priv->snapshot_characters->len) {
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ if (!vte_terminal_is_word_char(terminal, current)) {
++ offset++;
++ } else {
++ break;
++ }
++ }
++ while (offset < priv->snapshot_characters->len) {
++ current = vte_terminal_accessible_get_character_at_offset(text, offset);
++ if (vte_terminal_is_word_char(terminal, current)) {
++ offset++;
++ } else {
++ break;
++ }
++ }
+ *end_offset = offset;
+ break;
+ case ATK_TEXT_BOUNDARY_LINE_START:
--- a/patches/vte-09-get-text.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,113 +0,0 @@
-Index: vte/src/vteaccess.c
-===================================================================
-RCS file: /cvs/gnome/vte/src/vteaccess.c,v
-retrieving revision 1.44
-diff -u -p -r1.44 vteaccess.c
---- vte/src/vteaccess.c 1 May 2004 07:12:51 -0000 1.44
-+++ vte/src/vteaccess.c 27 Oct 2004 12:53:25 -0000
-@@ -1005,7 +1027,6 @@ vte_terminal_accessible_get_text_somewhe
- priv->snapshot_attributes->len);
- break;
- case ATK_TEXT_BOUNDARY_WORD_START:
-- case ATK_TEXT_BOUNDARY_WORD_END:
- /* Back up to the previous non-word-word transition. */
- while (offset > 0) {
- prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
-@@ -1072,6 +1093,97 @@ vte_terminal_accessible_get_text_somewhe
- }
-
- }
-+ /* Now find the next non-word-word transition */
-+ while (offset < priv->snapshot_characters->len) {
-+ next = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ if (!vte_terminal_is_word_char(terminal, next)) {
-+ offset++;
-+ } else {
-+ break;
-+ }
-+ }
-+ *end_offset = offset;
-+ break;
-+ case ATK_TEXT_BOUNDARY_WORD_END:
-+ /* Back up to the previous word-non-word transition. */
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ while (offset > 0) {
-+ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
-+ if (vte_terminal_is_word_char(terminal, prev) &&
-+ !vte_terminal_is_word_char(terminal, current)) {
-+ break;
-+ } else {
-+ offset--;
-+ current = prev;
-+ }
-+ }
-+ *start_offset = offset;
-+ /* If we're looking for the word end before this one,
-+ * keep searching by backing up to the previous word
-+ * character and then searching for the word-end
-+ * before that. */
-+ if (direction == direction_previous) {
-+ while (offset > 0) {
-+ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
-+ if (vte_terminal_is_word_char(terminal, prev)) {
-+ offset--;
-+ } else {
-+ break;
-+ }
-+ }
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ while (offset > 0) {
-+ prev = vte_terminal_accessible_get_character_at_offset(text, offset - 1);
-+ if (vte_terminal_is_word_char(terminal, prev) &&
-+ !vte_terminal_is_word_char(terminal, current)) {
-+ break;
-+ } else {
-+ offset--;
-+ current = prev;
-+ }
-+ }
-+ *start_offset = offset;
-+ }
-+ /* If we're looking for the word end after this one,
-+ * search forward by scanning forward for the next
-+ * word character, then the next non-word character
-+ * after that. */
-+ if (direction == direction_next) {
-+ while (offset < priv->snapshot_characters->len) {
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ if (!vte_terminal_is_word_char(terminal, current)) {
-+ offset++;
-+ } else {
-+ break;
-+ }
-+ }
-+ while (offset < priv->snapshot_characters->len) {
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ if (vte_terminal_is_word_char(terminal, current)) {
-+ offset++;
-+ } else {
-+ break;
-+ }
-+ }
-+ *start_offset = offset;
-+ }
-+ /* Now find the next word end. */
-+ while (offset < priv->snapshot_characters->len) {
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ if (!vte_terminal_is_word_char(terminal, current)) {
-+ offset++;
-+ } else {
-+ break;
-+ }
-+ }
-+ while (offset < priv->snapshot_characters->len) {
-+ current = vte_terminal_accessible_get_character_at_offset(text, offset);
-+ if (vte_terminal_is_word_char(terminal, current)) {
-+ offset++;
-+ } else {
-+ break;
-+ }
-+ }
- *end_offset = offset;
- break;
- case ATK_TEXT_BOUNDARY_LINE_START:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-09-selection-perf-improve.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,219 @@
+--- vte-0.11.11/src/vte.c 2004-11-05 11:32:07.000000000 +0530
++++ vte-0.11.11-new/src/vte.c 2004-11-05 11:55:19.350582000 +0530
+@@ -1530,6 +1530,91 @@ vte_terminal_match_add(VteTerminal *term
+ return new_regex.tag;
+ }
+
++
++
++
++
++static gboolean find_url(const char *data, int cursor, int *start, int *end)
++{
++ const char *allowed = "-_$.+!*(),;:@&=/?~#%";
++ const char *trim = ".),";
++ const char *starts[] = { "news://", "telnet://", "nttp://", "file://",
++ "http://", "ftp://", "https://",
++ "www", "ftp" };
++ const int nstarts = sizeof(starts) / sizeof(*starts);
++ gboolean dot;
++ int i, j;
++
++ /* Back up to just after the most recent non-URL character. */
++ for (i = cursor; i > 0; i--) {
++ if (!isalnum(data[i - 1]) && !strchr(allowed, data[i - 1]))
++ break;
++ }
++
++ /* Find an appropriate beginning. */
++ for (; i <= cursor; i++) {
++ if (!strchr("fhntw", data[i]))
++ continue;
++ for (j = 0; j < nstarts; j++) {
++ if (strncmp(data + i, starts[j],
++ strlen(starts[j])) == 0)
++ break;
++ }
++ if (j < nstarts)
++ break;
++ }
++ if (i > cursor)
++ return FALSE;
++ *start = i;
++ i += strlen(starts[j]);
++
++ /* Find end of domain part. We must see at least one dot if
++ * our beginning wasn't a real URL scheme. */
++ dot = FALSE;
++ for (; data[i]; i++) {
++ if (data[i] == '.')
++ dot = TRUE;
++ else if (!isalnum(data[i]) && data[i] != '-')
++ break;
++ }
++ if (!dot && !strchr(starts[j], ':'))
++ return FALSE;
++
++ if (data[i] == ':')
++ {
++ i++;
++ while (isdigit(data[i]))
++ i++;
++ }
++
++ /* If we've passed the cursor, then we only want this part. */
++ if (i > cursor) {
++ *end = i;
++ return TRUE;
++ }
++
++ if (data[i++] != '/')
++ return FALSE;
++
++ /* Find the end of the URL. */
++ for (; data[i]; i++) {
++ if (!isalnum(data[i]) && !strchr(allowed, data[i]))
++ break;
++ }
++ if (i <= cursor)
++ return FALSE;
++
++ /* If the last character looks like ending punctuation, trim it. */
++ *end = (strchr(trim, data[i - 1]) != NULL) ? i - 1 : i;
++ return TRUE;
++}
++
++
++
++
++
++
++
+ /**
+ * vte_terminal_match_set_cursor:
+ * @terminal: a #VteTerminal
+@@ -1590,7 +1675,7 @@ vte_terminal_match_check_internal(VteTer
+ long column, glong row,
+ int *tag, int *start, int *end)
+ {
+- int i, j, ret, offset;
++ int i, j, ret, offset, st, en;
+ struct vte_match_regex *regex = NULL;
+ struct _VteCharAttributes *attr = NULL;
+ gssize coffset;
+@@ -1655,98 +1740,17 @@ vte_terminal_match_check_internal(VteTer
+ return NULL;
+ }
+
+- /* Now iterate over each regex we need to match against. */
+- for (i = 0; i < terminal->pvt->match_regexes->len; i++) {
+- regex = &g_array_index(terminal->pvt->match_regexes,
+- struct vte_match_regex,
+- i);
+- /* Skip holes. */
+- if (regex->tag < 0) {
+- continue;
+- }
+- /* We'll only match the first item in the buffer which
+- * matches, so we'll have to skip each match until we
+- * stop getting matches. */
+- coffset = 0;
+- ret = _vte_regex_exec(regex->reg,
+- terminal->pvt->match_contents + coffset,
+- G_N_ELEMENTS(matches),
+- matches);
+- while (ret == 0) {
+- for (j = 0;
+- (j < G_N_ELEMENTS(matches)) &&
+- (matches[j].rm_so != -1);
+- j++) {
+- /* The offsets should be "sane". */
+- g_assert(matches[j].rm_so + coffset <
+- terminal->pvt->match_attributes->len);
+- g_assert(matches[j].rm_eo + coffset <=
+- terminal->pvt->match_attributes->len);
+-#ifdef VTE_DEBUG
+- if (_vte_debug_on(VTE_DEBUG_MISC)) {
+- char *match;
+- struct _VteCharAttributes *sattr, *eattr;
+- match = g_strndup(terminal->pvt->match_contents + matches[j].rm_so + coffset,
+- matches[j].rm_eo - matches[j].rm_so);
+- sattr = &g_array_index(terminal->pvt->match_attributes,
+- struct _VteCharAttributes,
+- matches[j].rm_so + coffset);
+- eattr = &g_array_index(terminal->pvt->match_attributes,
+- struct _VteCharAttributes,
+- matches[j].rm_eo + coffset - 1);
+- fprintf(stderr, "Match %d `%s' from %d(%ld,%ld) to %d(%ld,%ld) (%d).\n",
+- j, match,
+- matches[j].rm_so + coffset,
+- sattr->column,
+- sattr->row,
+- matches[j].rm_eo + coffset - 1,
+- eattr->column,
+- eattr->row,
+- offset);
+- g_free(match);
++
++ if (find_url(terminal->pvt->match_contents, offset, &st, &en)) {
++ if (tag)
++ *tag = 0;
++ if (start)
++ *start = st;
++ if (end)
++ *end = en - 1;
++ return g_strndup(terminal->pvt->match_contents + st, en - st);
+
+ }
+-#endif
+- /* Snip off any final newlines. */
+- while ((matches[j].rm_eo > matches[j].rm_so) &&
+- (terminal->pvt->match_contents[coffset + matches[j].rm_eo - 1] == '\n')) {
+- matches[j].rm_eo--;
+- }
+- /* If the pointer is in this substring,
+- * then we're done. */
+- if ((offset >= (matches[j].rm_so + coffset)) &&
+- (offset < (matches[j].rm_eo + coffset))) {
+- if (tag != NULL) {
+- *tag = regex->tag;
+- }
+- if (start != NULL) {
+- *start = coffset +
+- matches[j].rm_so;
+- }
+- if (end != NULL) {
+- *end = coffset +
+- matches[j].rm_eo - 1;
+- }
+- if (GTK_WIDGET_REALIZED(GTK_WIDGET(terminal))) {
+- gdk_window_set_cursor((GTK_WIDGET(terminal))->window,
+- regex->cursor);
+- }
+- terminal->pvt->match_previous = regex->tag;
+- return g_strndup(terminal->pvt->match_contents + coffset + matches[j].rm_so,
+- matches[j].rm_eo - matches[j].rm_so);
+- }
+- }
+- /* Skip past the beginning of this match to
+- * look for more. */
+- coffset += (matches[0].rm_so + 1);
+- ret = _vte_regex_exec(regex->reg,
+- terminal->pvt->match_contents +
+- coffset,
+- G_N_ELEMENTS(matches),
+- matches);
+- }
+- }
+- terminal->pvt->match_previous = -1;
+ return NULL;
+ }
+
+@@ -11832,6 +11836,7 @@ vte_terminal_finalize(GObject *object)
+ terminal);
+ g_object_unref(G_OBJECT(terminal->pvt->pty_reaper));
+ }
++ terminal->pvt->pty_pid = -1;
+ terminal->pvt->pty_reaper = NULL;
+
+ /* Stop processing input. */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/vte-10-pre-edit-crash-on-close.diff Sat Jun 24 00:06:26 2006 +0000
@@ -0,0 +1,33 @@
+--- vte-0.11.13/src/vte.c 2005-05-13 08:15:38.839116000 +0530
++++ vte-0.11.13-new/src/vte.c 2005-05-13 08:17:33.949458000 +0530
+@@ -854,13 +854,11 @@ vte_invalidate_cursor_once(gpointer data
+ row);
+ }
+ if (cell != NULL) {
++ int charwidth;
+ columns = cell->columns;
+- if (_vte_draw_get_char_width(terminal->pvt->draw,
+- cell->c,
+- cell->columns) >
+- terminal->char_width * columns) {
++ charwidth = terminal->pvt->draw ? _vte_draw_get_char_width(terminal->pvt->draw, cell->c, cell->columns) : 1;
++ if (charwidth > terminal->char_width * columns)
+ columns++;
+- }
+ }
+ if (preedit_width > 0) {
+ columns += preedit_width;
+@@ -13927,10 +13925,9 @@ vte_terminal_paint(GtkWidget *widget, Gd
+ item.y = row * height;
+ cursor_width = item.columns * width;
+ if (cell) {
+- cursor_width = MAX(cursor_width,
+- _vte_draw_get_char_width(terminal->pvt->draw,
+- cell->c,
+- cell->columns));
++ int charwidth;
++ charwidth = terminal->pvt->draw ? _vte_draw_get_char_width(terminal->pvt->draw, cell->c, cell->columns) : 1;
++ cursor_width = MAX(cursor_width, charwidth);
+ }
+ if (GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(terminal))) {
+ selected = vte_cell_is_selected(terminal, col, drow,
--- a/patches/vte-10-selection-perf-improve.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,219 +0,0 @@
---- vte-0.11.11/src/vte.c 2004-11-05 11:32:07.000000000 +0530
-+++ vte-0.11.11-new/src/vte.c 2004-11-05 11:55:19.350582000 +0530
-@@ -1530,6 +1530,91 @@ vte_terminal_match_add(VteTerminal *term
- return new_regex.tag;
- }
-
-+
-+
-+
-+
-+static gboolean find_url(const char *data, int cursor, int *start, int *end)
-+{
-+ const char *allowed = "-_$.+!*(),;:@&=/?~#%";
-+ const char *trim = ".),";
-+ const char *starts[] = { "news://", "telnet://", "nttp://", "file://",
-+ "http://", "ftp://", "https://",
-+ "www", "ftp" };
-+ const int nstarts = sizeof(starts) / sizeof(*starts);
-+ gboolean dot;
-+ int i, j;
-+
-+ /* Back up to just after the most recent non-URL character. */
-+ for (i = cursor; i > 0; i--) {
-+ if (!isalnum(data[i - 1]) && !strchr(allowed, data[i - 1]))
-+ break;
-+ }
-+
-+ /* Find an appropriate beginning. */
-+ for (; i <= cursor; i++) {
-+ if (!strchr("fhntw", data[i]))
-+ continue;
-+ for (j = 0; j < nstarts; j++) {
-+ if (strncmp(data + i, starts[j],
-+ strlen(starts[j])) == 0)
-+ break;
-+ }
-+ if (j < nstarts)
-+ break;
-+ }
-+ if (i > cursor)
-+ return FALSE;
-+ *start = i;
-+ i += strlen(starts[j]);
-+
-+ /* Find end of domain part. We must see at least one dot if
-+ * our beginning wasn't a real URL scheme. */
-+ dot = FALSE;
-+ for (; data[i]; i++) {
-+ if (data[i] == '.')
-+ dot = TRUE;
-+ else if (!isalnum(data[i]) && data[i] != '-')
-+ break;
-+ }
-+ if (!dot && !strchr(starts[j], ':'))
-+ return FALSE;
-+
-+ if (data[i] == ':')
-+ {
-+ i++;
-+ while (isdigit(data[i]))
-+ i++;
-+ }
-+
-+ /* If we've passed the cursor, then we only want this part. */
-+ if (i > cursor) {
-+ *end = i;
-+ return TRUE;
-+ }
-+
-+ if (data[i++] != '/')
-+ return FALSE;
-+
-+ /* Find the end of the URL. */
-+ for (; data[i]; i++) {
-+ if (!isalnum(data[i]) && !strchr(allowed, data[i]))
-+ break;
-+ }
-+ if (i <= cursor)
-+ return FALSE;
-+
-+ /* If the last character looks like ending punctuation, trim it. */
-+ *end = (strchr(trim, data[i - 1]) != NULL) ? i - 1 : i;
-+ return TRUE;
-+}
-+
-+
-+
-+
-+
-+
-+
- /**
- * vte_terminal_match_set_cursor:
- * @terminal: a #VteTerminal
-@@ -1590,7 +1675,7 @@ vte_terminal_match_check_internal(VteTer
- long column, glong row,
- int *tag, int *start, int *end)
- {
-- int i, j, ret, offset;
-+ int i, j, ret, offset, st, en;
- struct vte_match_regex *regex = NULL;
- struct _VteCharAttributes *attr = NULL;
- gssize coffset;
-@@ -1655,98 +1740,17 @@ vte_terminal_match_check_internal(VteTer
- return NULL;
- }
-
-- /* Now iterate over each regex we need to match against. */
-- for (i = 0; i < terminal->pvt->match_regexes->len; i++) {
-- regex = &g_array_index(terminal->pvt->match_regexes,
-- struct vte_match_regex,
-- i);
-- /* Skip holes. */
-- if (regex->tag < 0) {
-- continue;
-- }
-- /* We'll only match the first item in the buffer which
-- * matches, so we'll have to skip each match until we
-- * stop getting matches. */
-- coffset = 0;
-- ret = _vte_regex_exec(regex->reg,
-- terminal->pvt->match_contents + coffset,
-- G_N_ELEMENTS(matches),
-- matches);
-- while (ret == 0) {
-- for (j = 0;
-- (j < G_N_ELEMENTS(matches)) &&
-- (matches[j].rm_so != -1);
-- j++) {
-- /* The offsets should be "sane". */
-- g_assert(matches[j].rm_so + coffset <
-- terminal->pvt->match_attributes->len);
-- g_assert(matches[j].rm_eo + coffset <=
-- terminal->pvt->match_attributes->len);
--#ifdef VTE_DEBUG
-- if (_vte_debug_on(VTE_DEBUG_MISC)) {
-- char *match;
-- struct _VteCharAttributes *sattr, *eattr;
-- match = g_strndup(terminal->pvt->match_contents + matches[j].rm_so + coffset,
-- matches[j].rm_eo - matches[j].rm_so);
-- sattr = &g_array_index(terminal->pvt->match_attributes,
-- struct _VteCharAttributes,
-- matches[j].rm_so + coffset);
-- eattr = &g_array_index(terminal->pvt->match_attributes,
-- struct _VteCharAttributes,
-- matches[j].rm_eo + coffset - 1);
-- fprintf(stderr, "Match %d `%s' from %d(%ld,%ld) to %d(%ld,%ld) (%d).\n",
-- j, match,
-- matches[j].rm_so + coffset,
-- sattr->column,
-- sattr->row,
-- matches[j].rm_eo + coffset - 1,
-- eattr->column,
-- eattr->row,
-- offset);
-- g_free(match);
-+
-+ if (find_url(terminal->pvt->match_contents, offset, &st, &en)) {
-+ if (tag)
-+ *tag = 0;
-+ if (start)
-+ *start = st;
-+ if (end)
-+ *end = en - 1;
-+ return g_strndup(terminal->pvt->match_contents + st, en - st);
-
- }
--#endif
-- /* Snip off any final newlines. */
-- while ((matches[j].rm_eo > matches[j].rm_so) &&
-- (terminal->pvt->match_contents[coffset + matches[j].rm_eo - 1] == '\n')) {
-- matches[j].rm_eo--;
-- }
-- /* If the pointer is in this substring,
-- * then we're done. */
-- if ((offset >= (matches[j].rm_so + coffset)) &&
-- (offset < (matches[j].rm_eo + coffset))) {
-- if (tag != NULL) {
-- *tag = regex->tag;
-- }
-- if (start != NULL) {
-- *start = coffset +
-- matches[j].rm_so;
-- }
-- if (end != NULL) {
-- *end = coffset +
-- matches[j].rm_eo - 1;
-- }
-- if (GTK_WIDGET_REALIZED(GTK_WIDGET(terminal))) {
-- gdk_window_set_cursor((GTK_WIDGET(terminal))->window,
-- regex->cursor);
-- }
-- terminal->pvt->match_previous = regex->tag;
-- return g_strndup(terminal->pvt->match_contents + coffset + matches[j].rm_so,
-- matches[j].rm_eo - matches[j].rm_so);
-- }
-- }
-- /* Skip past the beginning of this match to
-- * look for more. */
-- coffset += (matches[0].rm_so + 1);
-- ret = _vte_regex_exec(regex->reg,
-- terminal->pvt->match_contents +
-- coffset,
-- G_N_ELEMENTS(matches),
-- matches);
-- }
-- }
-- terminal->pvt->match_previous = -1;
- return NULL;
- }
-
-@@ -11832,6 +11836,7 @@ vte_terminal_finalize(GObject *object)
- terminal);
- g_object_unref(G_OBJECT(terminal->pvt->pty_reaper));
- }
-+ terminal->pvt->pty_pid = -1;
- terminal->pvt->pty_reaper = NULL;
-
- /* Stop processing input. */
--- a/patches/vte-11-pre-edit-crash-on-close.diff Fri Jun 23 23:15:31 2006 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
---- vte-0.11.13/src/vte.c 2005-05-13 08:15:38.839116000 +0530
-+++ vte-0.11.13-new/src/vte.c 2005-05-13 08:17:33.949458000 +0530
-@@ -854,13 +854,11 @@ vte_invalidate_cursor_once(gpointer data
- row);
- }
- if (cell != NULL) {
-+ int charwidth;
- columns = cell->columns;
-- if (_vte_draw_get_char_width(terminal->pvt->draw,
-- cell->c,
-- cell->columns) >
-- terminal->char_width * columns) {
-+ charwidth = terminal->pvt->draw ? _vte_draw_get_char_width(terminal->pvt->draw, cell->c, cell->columns) : 1;
-+ if (charwidth > terminal->char_width * columns)
- columns++;
-- }
- }
- if (preedit_width > 0) {
- columns += preedit_width;
-@@ -13927,10 +13925,9 @@ vte_terminal_paint(GtkWidget *widget, Gd
- item.y = row * height;
- cursor_width = item.columns * width;
- if (cell) {
-- cursor_width = MAX(cursor_width,
-- _vte_draw_get_char_width(terminal->pvt->draw,
-- cell->c,
-- cell->columns));
-+ int charwidth;
-+ charwidth = terminal->pvt->draw ? _vte_draw_get_char_width(terminal->pvt->draw, cell->c, cell->columns) : 1;
-+ cursor_width = MAX(cursor_width, charwidth);
- }
- if (GTK_WIDGET_HAS_FOCUS(GTK_WIDGET(terminal))) {
- selected = vte_cell_is_selected(terminal, col, drow,
--- a/vte.spec Fri Jun 23 23:15:31 2006 +0000
+++ b/vte.spec Sat Jun 24 00:06:26 2006 +0000
@@ -8,7 +8,7 @@
Name: vte
License: LGPL
Group: System/Libraries
-Version: 0.12.1
+Version: 0.12.2
Release: 1
Distribution: Java Desktop System
Vendor: Sun Microsystems, Inc.
@@ -17,16 +17,15 @@
Source1: vte.1.gz
Source2: libvte.3.gz
Patch1: vte-01-vtefc.diff
-Patch2: vte-02-glib.diff
-Patch3: vte-03-fcconfig.diff
-Patch4: vte-04-inputmethod-spotlocation.diff
-Patch5: vte-05-cut-copy-paste-handle.diff
-Patch6: vte-06-update-logout-record.diff
-Patch7: vte-07-utf8-ambiguous.diff
-Patch8: vte-08-g11n-word-char.diff
-Patch9: vte-09-get-text.diff
-Patch10: vte-10-selection-perf-improve.diff
-Patch11: vte-11-pre-edit-crash-on-close.diff
+Patch2: vte-02-fcconfig.diff
+Patch3: vte-03-inputmethod-spotlocation.diff
+Patch4: vte-04-cut-copy-paste-handle.diff
+Patch5: vte-05-update-logout-record.diff
+Patch6: vte-06-utf8-ambiguous.diff
+Patch7: vte-07-g11n-word-char.diff
+Patch8: vte-08-get-text.diff
+Patch9: vte-09-selection-perf-improve.diff
+Patch10: vte-10-pre-edit-crash-on-close.diff
URL: http://www.gnome.org
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Docdir: %{_defaultdocdir}/doc
@@ -64,8 +63,6 @@
%patch8 -p1
%patch9 -p1
%patch10 -p1
-%patch11 -p1
-
%build
%ifos linux
@@ -143,6 +140,9 @@
%{_libdir}/python2.4/vendor-packages/gtk-2.0/vtemodule.so
%changelog
+* Fri Jun 23 2006 - [email protected]
+- Bump to 0.12.2.
+
* Thu Apr 27 2006 - [email protected]
- Remove upstream patch, vte-12-msgfmt-no-c-param.diff.