377 Commits

Author SHA1 Message Date
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
Behdad Esfahbod
e0916c3f54 Bug 503071 – Application direction changes to right to left even if
2008-06-11  Behdad Esfahbod  <behdad@gnome.org>

        Bug 503071 – Application direction changes to right to left even if
        theres no translation

        * glib/gi18n-lib.h:
        * glib/glib.symbols:
        * glib/gstrfuncs.h:
        * glib/gstrfuncs.c:
        Add new functions g_dgettext() and g_dngettext().

        * glib/gutils.c (glib_gettext):
        * glib/gfileutils.c (g_format_size_for_display):
        * glib/goption.c (dgettext_swapped):
        Use the new functions.


svn path=/trunk/; revision=7020
2008-06-11 23:37:49 +00:00
Matthias Clasen
12fe21210e Improve the docs
svn path=/trunk/; revision=7003
2008-06-11 16:17:56 +00:00
14:31:18 Tim Janik
8fb03be5a9 Bug 503071 - Application direction changes to right to left even if theres
2008-05-20 14:31:18  Tim Janik  <timj@imendio.com>

        * reverted recent unapproved changes by Yair Hershkovitz, regarding:
        Bug 503071 - Application direction changes to right to left even if theres no translation.



svn path=/trunk/; revision=6919
2008-05-20 13:03:15 +00:00
Tor Lillqvist
e9f4abe46c Bug 530457 - G_USER_DIRECTORY_DOWNLOAD folder improperly mapped
2008-05-12  Tor Lillqvist  <tml@novell.com>

	Bug 530457 - G_USER_DIRECTORY_DOWNLOAD folder improperly mapped

	* glib/gutils.c (load_user_special_dirs): When running on Vista or
	later, use SHGetKnownFolderPath() to get the FOLDERID_Downloads
	folder for G_USER_DIRECTORY_DOWNLOAD, and FOLDERID_Public for
	G_USER_DIRECTORY_PUBLIC_SHARE.


svn path=/trunk/; revision=6883
2008-05-12 06:58:50 +00:00
Yair Hershkovitz
7ab77ec9cd Bug 503071 - Application direction changes to right to left even if theres
2008-05-11  Yair Hershkovitz  <yairhr@gmail.com>

        Bug 503071 - Application direction changes to right to left even if
        theres no translation. 

        * glib/gi18n.c: g_i18n_init() for initializing the glib i18n,
        checking if a translation is available for the calling app. wrappers for
        gettext, dgettext and dpgettext to check first if the application
        should be translated.

        * glib/gi18n.h: symbol declaration for gettext wrappers.

        * glib/gi18n-lib.h: include gi18n.h instead of libintl.h.

        * glib/gstrfuncs.c: moved g_dpgettext() to glib/gi18n.c.

        * glib/gutils.c: use g_dgettext() instead of dgettext().

        * glib/glibintl.h: include gi18n.h.

        * glib.symbols: added gettext wrappers.

        * glib/Makefile.am: added gi18n.c.


svn path=/trunk/; revision=6882
2008-05-11 09:34:29 +00:00
Tor Lillqvist
285b31e7a5 Don't enforce shared library build only on Windows. It might well make
2008-04-03  Tor Lillqvist  <tml@novell.com>

	* configure.in: Don't enforce shared library build only on
	Windows. It might well make sense to build static libraries in
	some use cases.

	* glib/gutils.c: Don't compile the DllMain if building libglib
	statically. Also in that case don't return NULL from
	_glib_get_installation_directory(), but return the installation
	directory of the program's .exe file.


svn path=/trunk/; revision=6818
2008-04-03 20:17:15 +00:00
Matthias Clasen
f0c679e3bf Simple fixes to help building GLib on embedded systems without NLS.
2008-03-30  Matthias Clasen  <mclasen@redhat.com>

        * glib/glibintl.h:
        * glib/gstrfuncs.c:
        * glib/gutils.c: Simple fixes to help building GLib on
        embedded systems without NLS.  (#524350, Peter Kjellerstedt)

svn path=/trunk/; revision=6779
2008-03-31 03:52:57 +00:00
Tor Lillqvist
17640e78d3 New internal function.
2008-02-24  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (_glib_get_installation_directory): New internal function.

	* glib/gspawn-win32.c: When spawning the helper process, use an
	explicit full path. (#518292)

	* glib/gspawn-win32.c
	* glib/gspawn-win32-helper.c: Fix race condition when using the
	helper process: When the helper process writes the handle of the
	actual started user process to the parent process, it must be
	duplicated in the parent process with DuplicateHandle() so that it
	is a valid handle in that process. However, if the helper process
	has happened to exit before the DuplicateHandle() call, the
	duplication will fail. Thus we must synchronise the helper
	process's exit. Use another pipe for this.

	Take care not to inherit the writing end of this pipe to the
	helper process. Also, in the helper process, take care not to
	inherit either of the pipes used for communication with the parent
	process to the started user process.


svn path=/trunk/; revision=6575
2008-02-24 21:15:47 +00:00
Tor Lillqvist
811b86fa56 Mention G_WIN32_DLLMAIN_FOR_DLL_NAME() will be deprecated in the future.
2008-02-24  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h: Mention G_WIN32_DLLMAIN_FOR_DLL_NAME() will be
	deprecated in the future.

	* glib/gutils.c: Drop use of G_WIN32_DLLMAIN_FOR_DLL_NAME(). Use a
	minimal DllMain() instead that just saves the DLL handle.
	(g_win32_get_system_data_dirs_for_module, _glib_get_locale_dir)
	(get_module_share_dir): Use
	g_win32_get_package_installation_directory_of_module().


svn path=/trunk/; revision=6570
2008-02-24 01:07:41 +00:00
Hans Breuer
521e741d56 define CSIDL_MYPICTURES if not available use G_STRFUNC instead of compiler
2008-02-17  Hans Breuer  <hans@breuer.org>

	* glib/gutils.c : define CSIDL_MYPICTURES if not available
	* gthread/gthread-win32.c : use G_STRFUNC instead of compiler 
	specific __FUNCTION__


svn path=/trunk/; revision=6526
2008-02-17 12:49:12 +00:00
Wouter Bolsterlee
ca25b31ee3 Fixed gtk-doc warnings by updating the documentation of various functions.
2008-01-30  Wouter Bolsterlee  <wbolster@svn.gnome.org>

	* glib/gchecksum.c:
	* glib/gtestutils.c:
	* glib/gutils.c:

	Fixed gtk-doc warnings by updating the documentation of
	various functions.

svn path=/trunk/; revision=6429
2008-01-30 20:52:13 +00:00
Mathias Hasselmann
f87b822b21 Allow NULL strings in g_parse_debug_string. (#503862, Matthew Barnes)
* glib/gutils.c:
Allow NULL strings in g_parse_debug_string. (#503862, Matthew Barnes)

svn path=/trunk/; revision=6137
2007-12-16 15:04:51 +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
Alexander Larsson
6ae887bb9b Add in the new symbols
2007-11-28  Alexander Larsson  <alexl@redhat.com>

        * glib/glib.symbols:
	Add in the new symbols
	
        * glib/gurifuncs.c:
	Use the aliases framework
	
        * glib/glibintl.h:
        * glib/gutils.c:
	Make the alias stuff work now that glib_gettext
	is exported to libgio. 


svn path=/trunk/; revision=5973
2007-11-28 14:35:14 +00:00
Tor Lillqvist
007d3ad28a Use either lib/locale or share/locale depending on which one is in
2007-11-27  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (_glib_get_locale_dir) [Win32]: Use either
	lib/locale or share/locale depending on which one is in
	GLIB_LOCALE_DIR. When the configury recognizes GNU gettext (based
	on the _nl_msg_cat_cntr variable, eek), share/locale gets used.

	* glib-zip.in: Likewise, look for message catalogs either in
	lib/locale or share/locale.


svn path=/trunk/; revision=5944
2007-11-26 22:32:12 +00:00
Alexander Larsson
8bdbcb9213 gio/ docs/reference/gio Merged gio-standalone into glib.
2007-11-26  Alexander Larsson  <alexl@redhat.com>

        * Makefile.am:
        * configure.in:
        * gio-2.0-uninstalled.pc.in:
        * gio-2.0.pc.in: 
        * gio-unix-2.0-uninstalled.pc.in:
        * gio-unix-2.0.pc.in:
	* gio/
	* docs/reference/gio
	Merged gio-standalone into glib.
	
        * glib/glibintl.h:
        * glib/gutils.c:
	Export glib_gettext so that gio can use it
	Add P_ (using same domain for now)
	Add I_ as g_intern_static_string


svn path=/trunk/; revision=5940
2007-11-26 16:12:50 +00:00
Matthias Clasen
d2f111fca7 Require gtk-doc 1.8.
2007-11-25  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Require gtk-doc 1.8.

        * glib/gasyncqueue.c:
        * glib/gdate.c:
        * glib/gfileutils.c:
        * glib/gmain.c:
        * glib/gmarkup.c:
        * glib/gregex.c:
        * glib/gtestutils.c:
        * glib/gutils.c: Use gtk-doc abbreviations for
        examples in doc comments.


svn path=/trunk/; revision=5933
2007-11-25 06:05:06 +00:00
Matthias Clasen
dbfdac8d22 Fix the doc wording. (#491957, Areg Beketovski)
2007-11-08  Matthias Clasen <mclasen@redhat.com>

        * glib/gmain.c (g_main_context_release): Fix the doc
        wording.  (#491957, Areg Beketovski)



svn path=/trunk/; revision=5836
2007-11-09 03:01:01 +00:00
Tor Lillqvist
43c16432fc Plug small one-time leak on Windows. (#488068, Daniel Atallah)
2007-10-22  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (_glib_gettext): Plug small one-time leak on
	Windows. (#488068, Daniel Atallah)


svn path=/trunk/; revision=5795
2007-10-22 20:13:55 +00:00
Tor Lillqvist
75f974d1d9 Drop leftover use of a union.
2007-08-01  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (get_special_folder): Drop leftover use of a
	union.


svn path=/trunk/; revision=5661
2007-08-01 09:49:02 +00:00
Matthias Clasen
c03ddad312 More docs
svn path=/trunk/; revision=5580
2007-06-18 19:12:10 +00:00
Matthias Clasen
7a6d2233e4 Prevent segfaults on long paths. (#447935, Robby Griffin)
2007-06-17  Matthias Clasen  <mclasen@redhat.com>

        * glib/gutils (g_get_current_dir): Prevent segfaults on
        long paths.  (#447935, Robby Griffin)


svn path=/trunk/; revision=5574
2007-06-18 16:35:41 +00:00
Emmanuele Bassi
72024709cc Remove the cache expiration logic: it makes g_get_user_special_dir() not
2007-06-11  Emmanuele Bassi  <ebassi@gnome.org>

	* glib/gutils.c (maybe_expire_user_special_dirs),
	(g_get_user_special_dir): Remove the cache expiration logic: it
	makes g_get_user_special_dir() not thread-safe. Document the fact
	that on some platform the value might be changed by the user and
	that GLib won't be able to reflect the change.

svn path=/trunk/; revision=5550
2007-06-11 15:31:29 +00:00
Matthias Clasen
fc0295e4cd Fix a thinko
svn path=/trunk/; revision=5545
2007-06-06 19:15:00 +00:00
Tor Lillqvist
e087f8c43c Add definitions for more CSIDL_* constants in case missing from headers.
2007-06-06  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c: Add definitions for more CSIDL_* constants in
	case missing from headers. Use CSIDL_PERSONAL instead of
	CSIDL_MYDOCUMENTS as CSIDL_MYDOCUMENTS seems to be a new thing
	that doesn't work in XP SP2 even.


svn path=/trunk/; revision=5544
2007-06-06 19:13:45 +00:00
Matthias Clasen
f6f9877b50 Fall back to $HOME/Desktop for the DESKTOP directory, like
2007-06-06  Matthias Clasen  <mclasen@redhat.com>

        * glib/gutils.c (g_get_user_special_dir): Fall back to
        $HOME/Desktop for the DESKTOP directory, like
        xdg_user_dir_lookup() does.


svn path=/trunk/; revision=5543
2007-06-06 19:05:53 +00:00
Matthias Clasen
bcc342b81b Don't deadlock when running with threads. (#444121, Christian Persch)
2007-06-05  Matthias Clasen  <mclasen@redhat.com>

        * glib/gutils.c (g_get_user_special_dir): Don't deadlock
        when running with threads.  (#444121, Christian Persch)


svn path=/trunk/; revision=5535
2007-06-05 17:36:17 +00:00
Matthias Clasen
d154485bc7 Add support for a number of special directories, as defined by the
2007-06-04  Matthias Clasen  <mclasen@redhat.com>

        Add support for a number of special directories, as
        defined by the xdg-user-dirs specification.  (#432651,
        Bastien Nocera, Emmanuele Bassi, Michael Natterer)

        * glib/glib.symbols:
        * glib/gutils.[hc]: Add the GUserDirectory enum and
        g_get_user_special_dir(), with implementations based
        on the xdg-user-dirs spec and on native interfaces
        for Win32 and Carbon.

        * configure.in: Add Carbon checks.

        * tests/tetsglib.c: Test g_get_user_special_dir().


svn path=/trunk/; revision=5528
2007-06-04 14:54:49 +00:00
Matthias Clasen
8187230ab4 Improve docs
svn path=/trunk/; revision=5251
2007-01-12 17:54:13 +00:00
Tor Lillqvist
98d5dea18a : Use only the wide character API here, too.
2006-12-28  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (get_windows_directory_root): : Use only the wide
	character API here, too.
2006-12-28 15:47:42 +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
Tor Lillqvist
f8f4e16eb9 Correct C99ism (mixed declarations and code) in Win32 ifdef branch.
2006-09-02  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
	declarations and code) in Win32 ifdef branch. (#353903, Mike
	Edenfield)
2006-09-01 23:32:05 +00:00
Tor Lillqvist
da422c0060 Remove support for Windows 9x/ME, as will be done also in Pango and GTK+.
2006-08-29  Tor Lillqvist  <tml@novell.com>

	Remove support for Windows 9x/ME, as will be done also in Pango
	and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
	it's pretty pointless to keep the Win9x code in here either. If
	somebody is interested, the code can always be found in older GLib
	versions, and in CVS.

	* glib/gdir.c
	* glib/gfileutils.c
	* glib/gspawn-win32-helper.c
	* glib/gspawn-win32.c
	* glib/gstdio.c
	* glib/gutils.c
	* glib/gwin32.c
	* glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
	G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
	branches, and any variables or static functions used only by the
	Win9x branches.

	* glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
	run on Win9x.
2006-08-29 22:45:00 +00:00
Behdad Esfahbod
4e866367a7 When matching debug flag keys, ignore case and accept any of comma, colon,
2006-07-06  Behdad Esfahbod  <behdad@gnome.org>

        * glib/gutils.c (g_parse_debug_string): When matching debug flag keys,
        ignore case and accept any of comma, colon, semicolon, space, and tab
        as separators.  Also, match dash with underscore.
2006-07-06 20:30:16 +00:00
Tor Lillqvist
fdc1c28a5e Add Windows notes to doc comment.
2006-06-14  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_listenv): Add Windows notes to doc comment.
2006-06-13 22:46:52 +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
Matthias Clasen
9e58246669 Don't read past the end of the string. (#334471, Morten Welinder)
2006-03-14  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutils.c (g_parse_debug_string): Don't read past the
	end of the string.  (#334471, Morten Welinder)
2006-03-14 17:56:27 +00:00
Tor Lillqvist
5a2950d041 Separate implementation on Win32: Use the wide character API on NT-based
2006-03-01  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_listenv): Separate implementation on Win32: Use
	the wide character API on NT-based Windows. Return UTF-8 strings.

	* glib/glib.symbols: Don't mark g_listenv as PRIVATE, as that
	meant it wasn't present in the import library. PRIVATE is used
	only for the backwards-compatibility DLL ABI stability hacks.
2006-03-01 14:18:55 +00:00
Tim Janik
35db6815fd wiped out all the wonderfull G_OS_WIN32 code i wrote ;-[) after tml told
Mon Jan 23 17:30:33 2006  Tim Janik  <timj@imendio.com>

        * glib/gutils.c (_g_getenv_nomalloc): wiped out all the wonderfull
        G_OS_WIN32 code i wrote ;-[) after tml told me windows has getenv()
        as well.
2006-01-23 16:32:22 +00:00
Tim Janik
75db578288 initialize GSlice config from G_SLICE environemtn variable. we support
Mon Jan 23 16:46:20 2006  Tim Janik  <timj@imendio.com>

        * glib/gslice.c (slice_config_init): initialize GSlice config from
        G_SLICE environemtn variable. we support G_SLICE=always-malloc
        currently, which forces all g_slice_*() allocations to use the system
        malloc instead.

        * glib/gutils.c:
        g_parse_debug_string(): added a note about not using g_malloc() here.
        _g_getenv_nomalloc(): getenv() variant that doesn't use g_malloc or
        g_slice. contains only guesswork in the WIN32 branch.
2006-01-23 15:51:06 +00:00
Matthias Clasen
fd73fead6f Fix a copy-and-paste error in the docs. (#325273, Declan Naughton)
2005-12-29  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutils.c (glib_check_version): Fix a copy-and-paste error
	in the docs.  (#325273, Declan Naughton)
2005-12-30 02:08:02 +00:00
Matthias Clasen
0b5560da8b Add versioned deprecation information 2005-12-05 15:38:54 +00:00
Matthias Clasen
8529c47126 Handle multiple user names with the same UID better. (#319535, Laszlo
2005-12-04  Matthias Clasen  <mclasen@redhat.com>

	Handle multiple user names with the same UID better.
	(#319535, Laszlo Peter)

	* glib/gutils.c (g_get_any_init_do): When determining user
	data, first look up $LOGNAME. If the UID doesn't match
	getuid(), fall back to the current behaviour of looking
	up the user data based on getuid().
2005-12-04 07:00:50 +00:00
Tor Lillqvist
130763338c Wrapping atexit() is a bad idea on Windows, where the EXE and each DLL
2005-08-31  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h: Wrapping atexit() is a bad idea on Windows, where
	the EXE and each DLL have their own atexit function chains.

	#define g_atexit as atexit instead. This means it has a
	better chance of doing what the caller wants. For instance,
	gtkhtml calls g_atexit() registering a function in gtkhtml
	itself. This caused a crash when g_atexit() was implemented as a
	function in the GLib DLL. The gtkhtml DLL was already unloaded by
	the time the GLib DLL got unloaded.

	* glib/gutils.c: #undef the #define mentioned above, to also get a
	real g_atexit() into the DLL for backward compatibility. Document
	the Windows behaviour of g_atexit(), and document the varying ways
	atexit() can behave in the context of dynamically loaded modules
	on Unix.
2005-08-31 21:02:47 +00:00
Matthias Clasen
4adde8fdca Fix the crt_externs.h include 2005-08-24 03:11:45 +00:00
Matthias Clasen
a1ab92582c Check for crt_externs.h and _NSGetEnviron.
2005-08-17  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Check for crt_externs.h and _NSGetEnviron.

	* glib/gutils.c: On Darwin, include crt-externs.h and
	define environ using _NSGetEnviron().  (#313731)
2005-08-17 18:31:08 +00:00
Stepan Kasal
63828e25ec Move the body of the big if... (g_get_any_init_do): ... to this new
2005-08-16  Stepan Kasal  <kasal@ucw.cz>

	* glib/gutils.c (g_get_any_init): Move the body of the big if...
	(g_get_any_init_do): ... to this new function.
	(g_get_any_init): Declare as inline.
	(g_get_any_init_locked): New inline function, does the locking.
	Make use of these two throughout the code.
2005-08-17 12:00:51 +00:00
Tor Lillqvist
535939a144 Use "localhost" as fallback for g_get_host_name(), not "unknown".
2005-08-11  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_get_any_init): Use "localhost" as fallback for
	g_get_host_name(), not "unknown".
2005-08-10 21:13:29 +00:00
Matthias Clasen
f3d4fb75b8 Initialize variables to not make gcc nervous.
2005-08-08  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutils.c (_g_compute_locale_variants): Initialize
	variables to not make gcc nervous.
2005-08-09 02:45:20 +00:00