aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-iconv.c
Commit message (Collapse)AuthorAgeFilesLines
* Port to Windows, initial commit:Tor Lillqvist2005-04-291-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-04-29 Tor Lillqvist <tml@novell.com> Port to Windows, initial commit: * configure.in: Check for Win32, define Automake conditional OS_WIN32. Check for regexec() perhaps in separate -lregex, define REGEX_LIBS if so. Require glib-2.0 >= 2.6 (and thus also gtk+-2.0 >= 2.6) so that we can use the gstdio wrappers for full support of non-ASCII filenames on Win32. Don't use -D_REENTRANT on Win32, has ne special meaning. * gal.pc.in: Require gtk+-2.0 >= 2.6 also here for consistency. * gal-zip.in: New file, used to build zipfile format distribution of gal for Win32. * configure.in * Makefile.am: Add gal-zip(.in). * */Makefile.am * */*.c: Harmonize -I and #include conventions. (Of course, this hasn't anything to do with Windows porting as such, I just got carried away...) Use only -I$(top_srcdir). Use paths to gal headers staring with "gal", except for headers from the same directory as the .c file, which are included as such. Include all gal headers using doublequotes. Sort #includes and remove duplicates and obvious redundancies. Include config.h first without any HAVE_CONFIG_H, then system headers, then other GNOME lib headers, than gal's own headers. Just include gtk.h instead of separate gtk*.h headers. Don't include gi18n.h, include e-i18n.h to use e_gettext() consistently. * gal/Makefile.am: Use -no-undefined on Win32 so that libtool agrees to build a shared library. Because of the bidirectional dependency between libgal and libgal-a11y we can build libgal-a11y sanely as a shared library on Win32, so we don't install any separate libgal-a11y at all. So, on Win32, link the stuff that goes into libgal-a11y also into libgal. Link with REGEX_LIBS. * gal/a11y/Makefile.am: See above. Just build a dummy static libgal-a11y on Win32 (can't convince Automake not to build the library at all on one platform using Automake ifdef, apparently). Then (this is a gross hack) explicitly remove the library after installation in the install-data-local rule. * gal/e-table/Makefile.am * gal/e-table/e-table-config.c: Rename ETABLE_GLADEDIR to GAL_GLADEDIR for consistency. * gal/e-table/e-cell-date.c: No localtime_r() in Microsoft's C library, but its localtime() *is* thread-safe. * gal/e-table/e-cell-text.c * gal/e-table/e-cell-tree.c * gal/e-table/e-cell-vbox.c * gal/e-text/e-text.c * gal/widgets/e-unicode.c: Remove unnecessary inclusion of gdkx.h. * gal/e-table/e-cell-tree.c (ect_realize): Instead of the Xlib macro None (whose value is zero), use the corresponding zero-valued enums from the appropriate GDK type. * gal/e-table/e-table-config.c * gal/e-table/e-table-field-chooser.c * gal/menus/gal-define-views-dialog.c * gal/menus/gal-view-instance-save-as-dialog.c * gal/menus/gal-view-new-dialog.c * gal/widgets/e-categories-master-list-array.c * gal/widgets/e-categories-master-list-dialog.c * gal/widgets/e-categories.c: Use g_build_filename() to construct pathnames at run-time instead of compile-time. On Windows the macros GAL_GLADEDIR and GAL_IMAGESDIR expand to function calls, in order to support installing in a freely chosen location. * gal/e-table/e-table-item.c * gal/e-table/e-cell-vbox.c: Instrad of the Xlib GrabSuccess, use GDK_GRAB_SUCCESS (which has the same value). * gal/e-table/e-table-specification.c (e_table_specification_load_from_file) * gal/e-table/e-table.c (e_table_load_specification) * gal/e-table/e-tree-table-adapter.c (open_file) * gal/menus/gal-view-instance.c (load_current_view) * gal/menus/gal-view-instance.c (load_current_view): On Win32, convert filename to the locale character set before passing to xmlParseFile() which doesn't use UTF-8 filenames. Use gstdio wrappers. * gal/util/Makefile.am: Define GAL_PREFIX as $prefix. Define GAL_LOCALEDIR, GAL_GLADEDIR and GAL_IMAGESDIR also here for e-win32-reloc.c. Include e-win32-reloc.c on Win32. * gal/util/e-iconv.c (e_iconv_init): Use g_win32_getlocale() on Windows. * gal/util/e-util.c * gal/util/e-xml-utils.c: Use g_mkstemp() instead of non-portable mkstemp(). Use GLib pathname manipulation functions. Use gstdio wrappers. * gal/util/e-util-private.h: New file. Contains just Win32 bits for now that redefine the directory names from the Makefile as functions calls. * gal/util/e-win32-reloc.c: New file. Contains a minimal DllMain() and functions to support freely chosen installation location on Windows. * gal/util/e-xml-utils.c: No fsync() in the Microsoft C library. * gal/windgets/Makefile.am: Add -I$(top_srcdir)/gal for consistency with the sibling Makefile.am files. * gal/widgets/e-canvas.c: Instead of the Xlib AlreadyGrabbed, use GDK_GRAB_ALREADY_GRABBED. svn path=/trunk/; revision=29249
* Fix for #46168 some additional locale aliases required for chinese supportSuresh Chandrasekharan2003-07-291-0/+4
| | | | | | | | | 2003-07-11 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> * gal/util/e-iconv.c : Fix for #46168 some additional locale aliases required for chinese support svn path=/trunk/; revision=21999
* Fixed typo in BIG5HKSCSSuresh Chandrasekharan2003-06-201-2/+2
| | | | | | | | 2003-06-18 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> * e-iconv.c: Fixed typo in BIG5HKSCS svn path=/trunk/; revision=21486
* Alias gb-2312 to gb2312 also (since iconv doesn't have "gb-2312"). IJeffrey Stedfast2003-03-071-11/+49
| | | | | | | | | | | | | | | | 2003-03-06 Jeffrey Stedfast <fejj@ximian.com> * gal/util/e-iconv.c: Alias gb-2312 to gb2312 also (since iconv doesn't have "gb-2312"). I wonder if we should capitalise GB2312? At least my iconv lists it in all caps (although I have the benefit of having gnu iconv which is case insensitive so I dunno). (e_strdown, e_strup): New functions to replace g_ascii_str[down,up]: because the glib versions return a newly allocated string buf and that is not what we want. (e_iconv_charset_name): Use the new e_strdown. (e_iconv_open): Save errno. svn path=/trunk/; revision=20212
* New internal function to parse the locale language code. (e_iconv_init):Jeffrey Stedfast2003-02-261-28/+102
| | | | | | | | | | | | | 2003-02-25 Jeffrey Stedfast <fejj@ximian.com> * gal/util/e-iconv.c (locale_parse_lang): New internal function to parse the locale language code. (e_iconv_init): Parse and set the locale_lang variable. (e_iconv_locale_language): Return the locale_lang. (e_iconv_charset_language): Map some CJKR charsets to a language code. svn path=/trunk/; revision=20063
* Fix for Solaris Bug "31081 Mailer sender/Subject/Date fields blank forSuresh Chandrasekharan2003-02-141-0/+2
| | | | | | | | | | | 2003-02-12 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> * gal/util/e-iconv.c: Fix for Solaris Bug "31081 Mailer sender/Subject/Date fields blank for Solaris 8 ko_KR.EUC locale." and partial fix for Solaris Bug "32747 additional issues with evolution beta2 in ja_JP.PCK locale" svn path=/trunk/; revision=19909
* new helper function, g_strdown with forced C locale (e_iconv_init): useRadek Doulik2002-09-271-4/+21
| | | | | | | | | | | 2002-09-26 Radek Doulik <rodo@ximian.com> * gal/util/e-iconv.c (C_g_strdown): new helper function, g_strdown with forced C locale (e_iconv_init): use C_g_strdown (e_iconv_charset_name): ditto svn path=/trunk/; revision=18235
* Make locale_charset a char *, not const char *. Kills a warning in theDan Winship2002-09-201-2/+2
| | | | | | | | | | | | | * gal/util/e-iconv.c: Make locale_charset a char *, not const char *. Kills a warning in the !HAVE_CODESET case. (e_iconv_init): No longer need to cast locale_charset to (char *) while mangling it in the HAVE_CODESET case. * gal/util/e-xml-utils.c: #include <stdlib.h> for free() * gal/widgets/e-categories-master-list-array.c: Likewise svn path=/trunk/; revision=18129
* apply patch for 27447 from Matt Avery for a bug in the solaris iconvMike Kestner2002-09-181-2/+3
| | | | | | | | | 2002-09-17 Mike Kestner <mkestner@ximian.com> * gal/util/e-iconv.c : apply patch for 27447 from Matt Avery for a bug in the solaris iconv implementation. svn path=/trunk/; revision=18100
* Use iconv-detect.c to generate a iconv-detect.h file containingJeffrey Stedfast2002-03-301-13/+33
| | | | | | | | | | | | | | | | 2002-03-29 Jeffrey Stedfast <fejj@ximian.com> * configure.in: Use iconv-detect.c to generate a iconv-detect.h file containing information about the preferred charset formats to use with the system iconv. * iconv-detect.c: New program to detect the preferred charset formats for use with the system iconv. * gal/util/e-iconv.c (e_iconv_charset_name): Update to use macros defined in iconv-detect which is created at configure time. svn path=/trunk/; revision=16282
* AIX and IRIX are like Sun systems - they use ISO8859-1 rather than namesJeffrey Stedfast2002-01-261-2/+2
| | | | | | | | | 2002-01-25 Jeffrey Stedfast <fejj@ximian.com> * gal/util/e-iconv.c: AIX and IRIX are like Sun systems - they use ISO8859-1 rather than names like ISO-8859-1. svn path=/trunk/; revision=15478
* Changed the license announcement at the top of these files.Christopher James Lahey2001-10-271-14/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-26 Christopher James Lahey <clahey@ximian.com> * gal/e-paned/e-hpaned.c, gal/e-paned/e-hpaned.h, gal/e-paned/e-paned.c, gal/e-paned/e-paned.h, gal/e-paned/e-vpaned.c, gal/e-paned/e-vpaned.h, gal/e-text/e-completion-match.c, gal/e-text/e-completion-match.h, gal/e-text/e-completion-test.c, gal/e-text/e-completion-view.c, gal/e-text/e-completion-view.h, gal/e-text/e-completion.c, gal/e-text/e-completion.h, gal/e-text/e-entry-test.c, gal/e-text/e-entry.c, gal/e-text/e-entry.h, gal/e-text/e-table-text-model.c, gal/e-text/e-table-text-model.h, gal/e-text/e-text-model-repos.c, gal/e-text/e-text-model-repos.h, gal/e-text/e-text-model-test.c, gal/e-text/e-text-model-uri.c, gal/e-text/e-text-model-uri.h, gal/e-text/e-text-model.c, gal/e-text/e-text-model.h, gal/e-text/e-text.c, gal/e-text/e-text.h, gal/util/e-bit-array.c, gal/util/e-bit-array.h, gal/util/e-cache.c, gal/util/e-cache.h, gal/util/e-iconv.c, gal/util/e-iconv.h, gal/util/e-sorter-array.c, gal/util/e-sorter-array.h, gal/util/e-sorter.c, gal/util/e-sorter.h, gal/util/e-text-event-processor-emacs-like.c, gal/util/e-text-event-processor-emacs-like.h, gal/util/e-text-event-processor-types.h, gal/util/e-text-event-processor.c, gal/util/e-text-event-processor.h, gal/util/e-util.c, gal/util/e-util.h, gal/util/e-xml-utils.c, gal/util/e-xml-utils.h, gal/widgets/color-group.c, gal/widgets/color-group.h, gal/widgets/color-palette.c, gal/widgets/color-palette.h, gal/widgets/e-canvas-utils.c, gal/widgets/e-canvas-utils.h, gal/widgets/e-canvas-vbox.c, gal/widgets/e-canvas-vbox.h, gal/widgets/e-canvas.c, gal/widgets/e-canvas.h, gal/widgets/e-categories-master-list-array.c, gal/widgets/e-categories-master-list-array.h, gal/widgets/e-categories-master-list-combo.c, gal/widgets/e-categories-master-list-combo.h, gal/widgets/e-categories-master-list-dialog-model.c, gal/widgets/e-categories-master-list-dialog-model.h, gal/widgets/e-categories-master-list-dialog.c, gal/widgets/e-categories-master-list-dialog.h, gal/widgets/e-categories-master-list.c, gal/widgets/e-categories-master-list.h, gal/widgets/e-categories.c, gal/widgets/e-categories.h, gal/widgets/e-colors.c, gal/widgets/e-colors.h, gal/widgets/e-cursors.c, gal/widgets/e-cursors.h, gal/widgets/e-font.c, gal/widgets/e-font.h, gal/widgets/e-gui-utils.c, gal/widgets/e-gui-utils.h, gal/widgets/e-hscrollbar.c, gal/widgets/e-hscrollbar.h, gal/widgets/e-popup-menu.c, gal/widgets/e-popup-menu.h, gal/widgets/e-printable.c, gal/widgets/e-printable.h, gal/widgets/e-reflow-model.c, gal/widgets/e-reflow-model.h, gal/widgets/e-reflow-sorted.c, gal/widgets/e-reflow-sorted.h, gal/widgets/e-reflow.c, gal/widgets/e-reflow.h, gal/widgets/e-scroll-frame.c, gal/widgets/e-scroll-frame.h, gal/widgets/e-selection-model-array.c, gal/widgets/e-selection-model-array.h, gal/widgets/e-selection-model-simple.c, gal/widgets/e-selection-model-simple.h, gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h, gal/widgets/e-unicode.c, gal/widgets/e-unicode.h, gal/widgets/e-vscrollbar.c, gal/widgets/e-vscrollbar.h, gal/widgets/gtk-combo-box.c, gal/widgets/gtk-combo-box.h, gal/widgets/gtk-combo-stack.c, gal/widgets/gtk-combo-stack.h, gal/widgets/gtk-combo-text.c, gal/widgets/gtk-combo-text.h, gal/widgets/test-color.c, gal/widgets/test-e-font.c, gal/widgets/test-e-font.h, gal/widgets/test-font-loading.c, gal/widgets/widget-color-combo.c, gal/widgets/widget-color-combo.h, gal/widgets/widget-pixmap-combo.c, gal/widgets/widget-pixmap-combo.h, src/e-table/e-table-sorted-variable.c, tests/test-define-views.c, tests/test-shortcut-bar.c, tests/test-table-1.c, tests/test-tree-1.c, tests/test-tree-2.c, tests/test-tree-3.c, tests/test-unicode.c: Changed the license announcement at the top of these files. svn path=/trunk/; revision=14158
* Fixed warnings here.Christopher James Lahey2001-10-261-1/+1
| | | | | | | | | | | | 2001-10-26 Christopher James Lahey <clahey@ximian.com> * gal/util/e-iconv.c (e_iconv), gal/widgets/e-font.c (e_font_to_native), gal/widgets/e-unicode.c (e_utf8_from_iconv_string_sized, e_utf8_to_iconv_string_sized, e_utf8_from_gtk_string_sized, e_utf8_to_gtk_string_sized): Fixed warnings here. svn path=/trunk/; revision=14132
* Bumped version to 0.15.99.4 for e-iconv changes.52001-10-261-0/+5
| | | | | | | | | | | | | | | | | | | 2001-10-25 <NotZed@Ximian.com> * configure.in: Bumped version to 0.15.99.4 for e-iconv changes. * gal/widgets/e-unicode.c (e_utf8_from_iconv_string_sized): " (e_utf8_to_iconv_string_sized): " (e_utf8_from_gtk_string_sized): " (e_utf8_to_gtk_string_sized): " * gal/widgets/e-font.c (e_font_to_native): s/iconv/e_iconv/ * gal/util/e-iconv.c (e_iconv): Implement a wrapper for iconv() to make sure we link with and execute the right iconv to match the right iconv_open. (BLAH!) svn path=/trunk/; revision=14111
* Want to check nn not in for end of list condition.62001-10-171-1/+1
| | | | | | | | | 2001-10-16 <NotZed@Ximian.com> * gal/util/e-iconv.c (flush_entry): Want to check nn not in for end of list condition. svn path=/trunk/; revision=13699
* work around broken behavior in some iconv implementions that require theLarry Ewing2001-10-141-1/+6
| | | | | | | | | | 2001-10-13 Larry Ewing <lewing@ximian.com> * gal/util/e-iconv.c (e_iconv_open): work around broken behavior in some iconv implementions that require the length arguments to be valid pointers event if both buffers are NULL. svn path=/trunk/; revision=13665
* Added special case for iso-10646-1 -> ucs-2be encoding since its notNot Zed2001-10-141-0/+10
| | | | | | | | | 2001-10-14 Not Zed <NotZed@Ximian.com> * gal/util/e-iconv.c: Added special case for iso-10646-1 -> ucs-2be encoding since its not always available. svn path=/trunk/; revision=13663
* (flush_entry): free the conv string and make sure we remove all the theLarry Ewing2001-10-131-1/+2
| | | | | | | | | 2001-10-12 Larry Ewing <lewing@ximian.com> (flush_entry): free the conv string and make sure we remove all the the items not all but the last one. svn path=/trunk/; revision=13652
* fix the test for "cp".Larry Ewing2001-10-131-2/+4
| | | | | | | | | 2001-10-12 Larry Ewing <lewing@ximian.com> * gal/util/e-iconv.c (e_iconv_charset_name): fix the test for "cp". svn path=/trunk/; revision=13651
* Fix for Debian systems which apparently can use a ';' as a codesetJeffrey Stedfast2001-10-131-11/+13
| | | | | | | | | | 2001-10-12 Jeffrey Stedfast <fejj@ximian.com> * gal/util/e-iconv.c (e_iconv_init): Fix for Debian systems which apparently can use a ';' as a codeset terminator? Cleaned up the code in the process, the parser is a little nicer now. svn path=/trunk/; revision=13650
* (e_iconv_charset_name): fix microsoft fix.Larry Ewing2001-10-131-2/+7
| | | | | | | | 2001-10-12 Larry Ewing <lewing@ximian.com> (e_iconv_charset_name): fix microsoft fix. svn path=/trunk/; revision=13649
* tweak the conversion routine slightly for microsoft charsets.Larry Ewing2001-10-131-2/+4
| | | | | | | | | 2001-10-12 Larry Ewing <lewing@ximian.com> * gal/util/e-iconv.c (e_iconv_charset_name): tweak the conversion routine slightly for microsoft charsets. svn path=/trunk/; revision=13648
* Fix case of some entries to work with solaris, incl adding UTF-8.22001-10-131-19/+23
| | | | | | | | | | | | | | 2001-10-12 <NotZed@Ximian.com> * gal/util/e-iconv.c: Fix case of some entries to work with solaris, incl adding UTF-8. (e_iconv_init): Dont down-case the name, only the key. (e_iconv_charset_name): Use capitals for ISO and CP for Solaris's iconv to work. (e_iconv_open): If we can't convert, say we're not busy, so it gets re-used next open, spit out a warning. svn path=/trunk/; revision=13638
* Changed the crash fix to just return -1.Christopher James Lahey2001-10-131-4/+4
| | | | | | | | | 2001-10-12 Christopher James Lahey <clahey@ximian.com> * gal/util/e-iconv.c (e_iconv_open): Changed the crash fix to just return -1. svn path=/trunk/; revision=13629
* Fixed a crash here for NULL ofrom.Christopher James Lahey2001-10-121-0/+4
| | | | | | | | | 2001-10-12 Christopher James Lahey <clahey@ximian.com> * gal/util/e-iconv.c (e_iconv_open): Fixed a crash here for NULL ofrom. svn path=/trunk/; revision=13622
* Left in some test code, shit.Michael Zucci2001-10-121-2/+0
| | | | svn path=/trunk/; revision=13606
* missed locale.h for some system that requires it.Michael Zucci2001-10-121-0/+2
| | | | svn path=/trunk/; revision=13605
* bumped revision to .112001-10-121-0/+416
2001-10-11 <NotZed@Ximian.com> * configure.in: bumped revision to .1 * gal/widgets/test-font-loading.c (print_gdk_font_name): Close iconv when done. * gal/widgets/e-unicode.c (e_utf8_to_gtk_string_sized): Close iconv when dont with it. (e_utf8_from_charset_string_sized): Changed for e_iconv api changes. (e_utf8_to_charset_string_sized): " (e_utf8_from_gtk_string_sized): Close iconv when done with it. (e_utf8_from_locale_string_sized): " (e_utf8_to_locale_string_sized): " * gal/widgets/e-font.c (e_locale_encoding): Removed. (e_iconv_from_charset): Removed. (e_iconv_to_charset): Removed. (e_iconv_from_locale): Removed. (e_iconv_to_locale): Removed. (e_iconv_from_gdk_font): Changd to use new e-iconv apis. (e_iconv_to_gdk_font): " (e_font_unref): Close iconv's when done with them. (translate_encoding): Removed. (get_locale_charset): Removed. (e_gdk_font_encoding): Fix for api changes. * gal/util/e-iconv.c: New stuff to commonify/fix up some problems with the iconv cache/conversion stuff inside e-font. svn path=/trunk/; revision=13601