113 Commits

Author SHA1 Message Date
Matthias Clasen
f966a0af9a Add some argument checks to filename conversion functions 2011-06-14 21:06:16 -04:00
Ryan Lortie
8073759f8c Remove all uses of G_CONST_RETURN
Just use 'const'.

https://bugzilla.gnome.org/show_bug.cgi?id=644611
2011-06-09 11:15:40 -04:00
Colin Walters
f0620902b2 Update annotations from gobject-introspection/gir/glib-2.0.c
This covers most of them.
2011-06-07 17:07:46 -04:00
Murray Cumming
30fdc1a799 Docs: Changed can not to cannot. 2011-03-24 09:33:55 +01:00
Emmanuele Bassi
08f0a31289 Revert "Remove all uses of G_CONST_RETURN"
This reverts commit 36741245cca56e979fe85e3de676fb3912058f2c.

The removal has not been discussed, except on Bugzilla:

https://bugzilla.gnome.org/show_bug.cgi?id=644611
2011-03-15 09:03:28 +00:00
Ryan Lortie
36741245cc Remove all uses of G_CONST_RETURN
Just use 'const'.
2011-03-15 01:32:22 -04:00
Ignacio Casal Quinteiro
401a4233e4 Check that error exists before trying to set it. Fixes bug #640975. 2011-01-31 13:34:26 +01:00
Tor Lillqvist
548ddd5fe9 Fix build on Windows and possibly other non-Linux platforms
Include glibconfig.h in files that test G_OS_WIN32. Include headers
for GLib APIs used conditionally where needed.
2010-09-06 15:57:32 +03:00
Matthias Clasen
04077ff5c5 More include cleanups 2010-09-03 23:03:14 -04:00
Matthias Clasen
63d19f0656 Fix doc format errors 2010-08-13 21:11:19 -04:00
Matthias Clasen
def0dc01f7 Move GConvert docs inline 2010-08-08 23:55:11 -04:00
Ryan Lortie
2e53e50244 glib/: fully remove galias hacks 2010-07-07 19:34:35 -04:00
Benjamin Otte
2295ba857f The fallback parameter to g_convert_with_fallback() should be const
This patch makes it so.
2010-03-16 16:40:04 +01:00
Benjamin Otte
4288ad7692 Properly nul-terminate return values from g_convert()
The patch ensures that multibyte character sets are properly
nul-terminated. This is an issue because the documentation claims to
return a "nul-terminated" string and users of the API assume that means
a proper nul-termination in the resulting character set.

I looked at Pidgin and GStreamer code and found at least 3 cases where
this was happening.

This patch also reverts the documentation change from
5a633f82dbbce067c56fba0ee372fd341b76368d as that is now no longer
necessary.
2009-10-28 19:26:17 +01:00
Benjamin Otte
5a633f82db Clarify documentation about g_convert() nul-terminated returns
THere is effectively no nul-termination for multibyte characters.
2009-10-27 21:31:25 +01:00
Christian Persch
8ef30758d5 Preserve errno
When using errno in g_set_error with _(), preserve errno. Bug #592457.
2009-08-22 15:08:43 +02:00
Tor Lillqvist
80ecc30841 glib/glib.symbols glib/gconvert.c glib/gdir.c glib/gfileutils.c
2008-07-27  Tor Lillqvist  <tml@novell.com>

	* glib/glib.symbols
	* glib/gconvert.c
	* glib/gdir.c
	* glib/gfileutils.c
	* glib/giowin32.c
	* glib/gspawn-win32.c
	* glib/gutils.c
	* glib/gwin32.c: Bypass the Windows "ABI compatibility" symbols on
	_WIN64. As there hasn't been any widely deployed 64-bit Windows
	builds of the really old GLib (pre-2.8.1) versions those refer to,
	there is no need to have the "ABI compatibility" versions in the
	DLL.

	* glib/makegalias.pl: Handle #ifndef _WIN64: Just output it, too.


svn path=/trunk/; revision=7257
2008-07-27 17:15:16 +00:00
Christian Persch
9c17697b56 Use g_set_error_literal where appropriate. Patch from bug #535947.
svn path=/trunk/; revision=7051
2008-06-16 16:53:58 +00:00
Tor Lillqvist
a6bdf9a1af Bug 524314 - g_convert() on Win32 implicitly converts full width
2008-04-02  Tor Lillqvist  <tml@novell.com>

	Bug 524314 - g_convert() on Win32 implicitly converts full width
	alphanumerics into half width
	
	* glib/win_iconv.c: Update from Yukihiro Nakadaira. Use
	WC_NO_BEST_FIT_CHARS flag for WideCharToMultiByte() unless the
	//translit flag was suffixed to the codeset name.

	* glib/gconvert.c: Include win_iconv.c earlier so that its
	definition of WINVER before it includes <windows.h> is used.


svn path=/trunk/; revision=6808
2008-04-02 02:43:45 +00:00
Tor Lillqvist
b60f5cf11b glib/gutf8.c (g_get_charset) glib/gconvert.c (g_locale_from_utf8) Clarify
2008-02-21  Tor Lillqvist  <tml@novell.com>
	
	* glib/gutf8.c (g_get_charset)
	* glib/gconvert.c (g_locale_from_utf8)
	* docs/reference/glib/running.sgml: Clarify character set
	issues on Windows.


svn path=/trunk/; revision=6551
2008-02-21 13:07:49 +00:00
Murray Cumming
0d7b605f06 Fixed some minor typos in documentation.
2008-02-06  Murray Cumming  <murrayc@murrayc.com>

* glib/gconvert.c:
* glib/pcre/pcre_internal.h: Fixed some minor typos in documentation.

svn path=/trunk/; revision=6467
2008-02-06 16:02:20 +00:00
Matthias Clasen
01f1f9ce56 Fix up some doc comments, avoid C99 comments
2007-11-28  Matthias Clasen  <mclasen@redhat.com>

        * glib/gtestutils.c: Fix up some doc comments, avoid C99 comments

        * glib/gconvert.c: De-doc-commentify static functions to
        shut up gtk-doc.

        * glib/gutils.c: Fix the glib_gettext doc comment.


svn path=/trunk/; revision=5982
2007-11-28 18:53:22 +00:00
Tor Lillqvist
04aec5b28d Implement #491549: On Windows, always use the native API for character set
2007-11-26  Tor Lillqvist  <tml@novell.com>

	Implement #491549: On Windows, always use the native API for
	character set conversions instead of GNU libiconv. Almost all
	codesets supported by GNU libiconv exist as Windows codepages.
	One missing feature is the "C99" and "JAVA" pseudo codesets, but I
	doubt that is worth worrying about.
	
	* glib/win_iconv.c: New file. iconv() implementation for
	Windows. Placed in the public domain by Yukihiro Nakadaira
	<yukihiro.nakadaira@gmail.com>. From
	http://yukihiro.nakadaira.googlepages.com/win_iconv.zip, his
	2007-11-17 version.

	* glib/gconvert.c: Include win_iconv.c on Windows.

	* configure.in: Bypass iconv checks on Windows. 


svn path=/trunk/; revision=5937
2007-11-25 23:27:45 +00:00
Matthias Clasen
d303704549 Try harder to reset shift state with AIX iconv(). (#467537)
2007-11-08  Matthias Clasen <mclasen@redhat.com>

        * glib/gconvert.c (g_convert_with_iconv): Try harder to reset
        shift state with AIX iconv().  (#467537)


svn path=/trunk/; revision=5821
2007-11-08 06:04:00 +00:00
Matthias Clasen
df3dd538e5 Define G_GNUC_INTERNAL for Sun Studio as __hidden. (#342981, Brian
2007-01-26  Matthias Clasen <mclasen@redhat.com>

        * configure.in: Define G_GNUC_INTERNAL for Sun Studio
        as __hidden.  (#342981, Brian Cameron)

        * glib/gconvert.c:
        * glib/gutf8.c: Move G_GNUC_INTERNAL uses to the right
        spot.

2

svn path=/trunk/; revision=5317
2007-01-27 03:34:48 +00:00
Matthias Clasen
98d552e0cd Consistently use gsize rather than size_t. (#333310, Morten Welinder)
2006-12-27  Matthias Clasen  <mclasen@redhat.com>

        * glib/gconvert.[hc]:
        * glib/gfileutils.c:
        * glib/giochannel.c:
        * glib/goption.c:
        * glib/gspawn.c:
        * glib/gunicollate.c:
        * glib/gutils.c:
        * tests/timeloop-basic.c:
        Consistently use gsize rather than size_t.  (#333310,
        Morten Welinder)
2006-12-28 04:48:06 +00:00
Matthias Clasen
3ab1139aef Add hints for locale-dependent interfaces. Add hints for locale-dependent
2006-12-26  Matthias Clasen  <mclasen@redhat.com>

        * glib/gutf8.c: Add hints for locale-dependent interfaces.
        * glib/gconvert.c: Add hints for locale-dependent interfaces.
2006-12-27 05:09:48 +00:00
Matthias Clasen
635341877f Improve formatting of docs.
2006-12-26  Matthias Clasen  <mclasen@redhat.com>

        * glib/gconvert.c (g_get_filename_charsets): Improve
        formatting of docs.
2006-12-27 04:29:27 +00:00
Matthias Clasen
0fffe4abc4 Don't use alloca and avoid allocating memory for small keys that are
2006-12-14  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (open_converter): Don't use alloca
	and avoid allocating memory for small keys that are
	already cached.  (#172406, Morten Welinder)
2006-12-15 04:35:13 +00:00
Matthias Clasen
8f05c1da81 Fix the pthread compiler flag detection.
2006-08-25  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Fix the pthread compiler flag detection.

	* glib/gunicode.h:
	* glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
	from gconvert.c, move it to gutf8.c, and export it privately.

	* glib/gconvert.c (g_filename_display_name): Adjust callers.

	* glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
	places to ensure error messages are valid UTF-8.  (#351853,
	Simon Budig)
2006-08-26 03:44:45 +00:00
Matthias Clasen
395997df20 2.12.1 2006-07-22 18:21:48 +00:00
Sebastian Wilhelmi
e4f8f3b95c Renamed to glib/gthreadprivate.h and moved system thread identifier
2006-05-09  Sebastian Wilhelmi  <wilhelmi@google.com>

	* glib/gthreadinit.h: Renamed to glib/gthreadprivate.h and moved
	system thread identifier comparision and assignment macros from
	glib/gthread.c to glib/gthreadprivate.h.

	* glib/Makefile.am, glib/gatomic.c, glib/gconvert.c, glib/gmain.c,
	glib/gmem.c, glib/gmessages.c, glib/grand.c, glib/gslice.c,
	glib/gthread.c, glib/gutils.c, gthread/gthread-impl.c: Use
	glib/gthreadprivate.h instead of glib/gthreadinit.h.

	* gthread/gthread-impl.c: Use GSystemThread instead of GThread for
	owner determination. This fixes #311043 and is mostly modeled
	after the patch from jylefort@FreeBSD.org.
2006-05-10 00:44:50 +00:00
Bastien Nocera
486c42ba75 reviewed by: Matthias Clasen <mclasen@redhat.com>
2006-04-12  Bastien Nocera  <hadess@hadess.net>

	reviewed by: Matthias Clasen <mclasen@redhat.com>

	* glib/gconvert.c: add more details about which RFC is concerned
	when using g_filename_to_uri (#337553)
2006-04-12 22:50:33 +00:00
Matthias Clasen
b58fb2bdb5 Move short_month_names and long_month_names to bss.
2006-04-04  Matthias Clasen  <mclasen@redhat.com>

        * glib/gdate.c: Move short_month_names and long_month_names
        to bss.

        * glib/gspawn-win32.c (g_spawn_error_quark):
        * glib/gspawn.c (g_spawn_error_quark):
        * glib/gshell.c (g_shell_error_quark):
        * glib/gmarkup.c (g_markup_error_quark):
        * glib/goption.c (g_option_error_quark):
        * glib/gkeyfile.c (g_key_file_error_quark):
        * glib/giochannel.c (g_io_channel_error_quark):
        * glib/gfileutils.c (g_file_error_quark):
        * glib/gconvert.c (g_convert_error_quark):
        * glib/gbookmarkfile.c (g_bookmark_file_error_quark):
        * glib/gthread.c (g_thread_error_quark): No point in making
        the error path fast by caching quarks.

        * glib/gbookmarkfile.c: Make the parser struct const.
2006-04-04 04:37:39 +00:00
Matthias Clasen
11a3e72c3a Fix bug 326747, Alberto Ruiz:
2006-01-16  Matthias Clasen  <mclasen@redhat.com>

	Fix bug 326747, Alberto Ruiz:

	* glib/gconvert.c (make_valid_utf8): Change this function to
	replace unknown characters by the Unicode replacement character
	instead of '?', and don't append "(invalid encoding)".
	(g_filename_display_name, g_filename_display_basename): Document
	how to determine if the filename was in an invalid encoding.
2006-01-16 14:54:45 +00:00
Matthias Clasen
717f3d4abb Enable the endianness test.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/convert-test.c: Enable the endianness test.

	* glib/gconvert.c: Make the caching of iconv descriptors
	optional.

	* configure.in: Add an --enable-iconv-cache option, and
	default to disabling iconv caching on new enough glibc.
	Somebody with access to Solaris systems will need to test
	if opening/closing of iconv descriptors is enough of
	a performance problem to warrant the caching on that
	platform. Note that the caching is causing correctness
	problems in some corner cases, thus turning it off
	is desirable unless it has severe performance implications.
2005-08-08 19:50:38 +00:00
Matthias Clasen
74ff285644 Don't go in an infinite loop if the input text ends in an incomplete
2005-08-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (g_convert_with_iconv): Don't go in an
	infinite loop if the input text ends in an incomplete multibyte
	character.  (#312402, Sebastian Bacher)
2005-08-02 21:10:16 +00:00
Matthias Clasen
02bc22d1ca Remove accidental documentation redundancies 2005-08-02 15:45:08 +00:00
Matthias Clasen
de298ae712 Cleanup converter state after the conversion. Document streaming
2005-08-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (g_convert_with_iconv, g_convert_with_fallback):
	Cleanup converter state after the conversion. Document streaming
	conversion pitfalls.  (#311337)
2005-08-02 14:58:20 +00:00
Tor Lillqvist
dc11b4370f Don't call g_set_error() unless the GError pointer is non-NULL. This
2005-04-27  Tor Lillqvist  <tml@novell.com>

	* glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
	call g_set_error() unless the GError pointer is non-NULL. This
	avoids infinite recursion problems in certain rare situations on
	Windows, when g_locale_from_utf8() is called from
	_glib_get_locale_dir() after the change below. It's the
	_glib_gettext() calls to translate error messages that are
	parameters to g_set_error() that cause the recursion, not
	g_set_error() itself.

	* glib/gwin32.c (g_win32_locale_filename_from_utf8): New
	function. Converts a filename to the system codepage, and if a
	straight conversion isn't possible (because the filename contains
	characters not in the system codepage), try looking up the
	filename (which should refer to an existing file for this to
	succeed) with short (8.3) pathname components.

	* glib/gutils.c (_glib_get_locale_dir): No need to cache the
	result, this function is normally called only once. Return the
	path to the locale directory in system codepage, not UTF-8. The
	path is passed to bindtextdomain(), which doesn't use UTF-8 file
	names. Use g_win32_locale_filename_from_utf8(). (#301772)

	Don't do run-time lookup of message catalog directory on
	Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
	we use paths fixed at configure time.
2005-04-27 09:50:09 +00:00
Matthias Clasen
112be25742 Clarify docs in some places. (#172404, Morten Welinder)
2005-04-04  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c: Clarify docs in some places. (#172404,
	Morten Welinder)
2005-04-05 03:56:40 +00:00
Matthias Clasen
608a31b98e Make PLT-reduction work with gcc4, and don't include everything in
2005-03-13  Matthias Clasen  <mclasen@redhat.com>

	Make PLT-reduction work with gcc4, and don't include
	everything in galias.h:

	* glib/glib.symbols: Group symbols by header and source file.
	* glib/makegalias.pl: Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling makegalias.pl -def
	* glib/Makefile.am (galiasdef.c): Add a rule to generate this
	file.
	* glib/*.c: Include galias.h after the other GLib headers,
	include galiasdef.c at the bottom.
2005-03-14 04:26:57 +00:00
Matthias Clasen
b403b41e15 Don't crash if G_FILENAME_ENCODING is empty. (#164330, Pawel Sakowski)
2005-01-17  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (g_get_filename_charsets): Don't crash
	if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
2005-01-17 15:28:59 +00:00
Tor Lillqvist
8693257c06 Improve docs.
2004-12-20  Tor Lillqvist  <tml@iki.fi>

	* glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
	docs.
2004-12-20 22:33:11 +00:00
Alexander Larsson
c839cdff0e Fix spelling Add g_return_val_if_fail.
2004-12-15  Alexander Larsson  <alexl@redhat.com>

	* glib/gconvert.c: (g_filename_display_basename):
	Fix spelling
	Add g_return_val_if_fail.

	* glib/glib.symbols:
	Add g_filename_display_basename
2004-12-15 16:42:28 +00:00
Alexander Larsson
aba9e78ec4 Add g_filename_display_basename.
2004-12-15  Alexander Larsson  <alexl@redhat.com>

	* glib/gconvert.[ch]:
	Add g_filename_display_basename.
2004-12-15 16:34:49 +00:00
Tor Lillqvist
e6da5d082e glib/glib.symbols Implement Windows DLL ABI stability also for
2004-12-12  Tor Lillqvist  <tml@iki.fi>

	* glib/glib.symbols
	* glib/gconvert.[ch]: Implement Windows DLL ABI stability also for
	g_filename_{to,from}_uri().
2004-12-12 20:53:02 +00:00
Tor Lillqvist
3eaeb13a36 Fix typo in doc comment.
2004-11-10  Tor Lillqvist  <tml@iki.fi>

	* glib/gconvert.c (g_get_filename_charsets): Fix typo in doc
	comment.
2004-11-10 14:26:27 +00:00
Tor Lillqvist
912ba0d43c Document that the result is guaranteed to be non-NULL.
2004-11-04  Tor Lillqvist  <tml@iki.fi>

	* glib/gconvert.c (g_filename_display_name): Document that the
	result is guaranteed to be non-NULL.

	* glib/gfileutils.c (get_contents_stdio, get_contents_regfile,
	get_contents_posix, get_contents_win32, g_file_open_tmp,
	g_file_read_link): Use g_filename_display_name() for error
	messages.
	(g_mkstemp): Document that the template should be in the GLib file
	name encoding.
	(g_file_open_tmp): Ditto. Also document that the actual name
	returned is also in the GLib file name encoding.
2004-11-04 00:37:47 +00:00
Matthias Clasen
00ff30a0bc *** empty log message *** 2004-11-02 21:53:23 +00:00