glib/gfileutils.c glib/gfileutils.h glib/glib.symbols Rename g_makepath()
[platform/upstream/glib.git] / ChangeLog.pre-2-10
index 13be51d..561ad89 100644 (file)
+2005-06-22  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gfileutils.c
+       * glib/gfileutils.h
+       * glib/glib.symbols
+       * tests/testglib.c: Rename g_makepath() to g_mkdir_with_parents().
+
+2005-06-22  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/goption.c (parse_short_option, parse_long_option): 
+       Pass the option name also in the NO_ARG case.  (#308602,
+       Masatake YAMATO)
+       (parse_arg): Properly store changes for arrays.  (#308528,
+       Roger Leigh)
+
+2005-06-22  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gfileutils.c (g_makepath): New function. Creates a
+       directory including intermediate parent directories as
+       needed. (#60509)
+
+       * glib/gfileutils.h: Declare it.
+
+       * glib/gutils.c (g_get_host_name): New function. Returns the
+       machine's name, or one of its names. Document that it is
+       best-effort only, and not guaranteed to be unique or anything.
+       (g_get_any_init): Get the host name here. On Unix use
+       gethostname(), on Windows use GetComputerName(). (#5200)
+
+       * glib/gutils.h: Declare it.
+
+       * glib/glib.symbols: Add new functions.
+
+       * tests/testglib.c: Test g_makepath() and g_get_host_name().
+       
+2005-06-18  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/goption.h: 
+       * glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
+       G_OPTION_FLAG_FILENAME to allow greater control of
+       G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)
+
+       * tests/option-test.c: test callback args
+
+2005-06-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>
+
+       * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
+
+2005-06-10  Matthias Clasen  <mclasen@redhat.com>
+
+       * configure.in: Bump version
+
+       * === Released 2.7.0 ===
+
+       * NEWS: Updates
+
+2005-06-09  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Better
+       error checking. (#306389, Morten Welinder)
+
+       * glib/goption.c (parse_int): Set errno to 0 before calling
+       strtol.  (#306388, Morten Welinder)
+
+2005-06-09  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gstdio.h
+       * glib/gstdio.c
+       * glib/glib.symbols: Add a chdir() wrapper, too.
+
+       * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
+
+       * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
+       comment.
+
+2005-06-08  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gutils.c (get_windows_directory_root): New helper function
+       on Win32, returns the root of the drive (or possibly share) where
+       the Windows directory is. (In the case of Terminal Server sessions
+       the Windows directory is a per-user folder.)
+       (g_get_any_init): Use get_windows_directory_root() as last resort
+       for both temp directory and home directory. g_get_home_dir() now
+       never returns NULL on Win32. Don't look at HOMEDRIVE and
+       HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
+       drive root should be enough.
+
+2005-06-08  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/glib.symbols: 
+       * glib/gunicode.h: 
+       * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
+       New function to calculate collation keys which are more
+       suitable for sorting filenames.  (#172690, Ole Laursen)
+
+Fri May 27 17:18:00 2005  Manish Singh  <yosh@gimp.org>
+
+       * glib/goption.c (parse_short_option): initialize option_name
+       before using it.
+
+2005-05-27  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/goption.c (parse_short_option, parse_long_option):
+       Return an error if an option is missing its argument.  (#305576,
+       Björn Lindqvist)
+
+       * tests/option-test.c (missing_arg_test): Add a testcase.
+
+Wed May 25 15:33:51 2005  Manish Singh  <yosh@gimp.org>
+
+       * glib/goption.c (print_help): rest_description should be const.
+
+2005-05-25  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gunidecomp.c (combine_hangul): Don't eat Hangul 
+       when normalizing.  (#301742, reported by Christian Biere,
+       patch by Noah Levitt)
+
+2005-05-24  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/goption.c (print_help): If the remaining argument
+       has an arg_description, display the synopsis as
+       PROGNAME [OPTION...] REST  (#305346, Noah Levitt)
+
+2005-05-20  Federico Mena Quintero  <federico@ximian.com>
+
+       Merged from glib-2-6:
+
+       * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
+       of exit_status(); it's not the return code from the child, but
+       rather the waitpid() status.
+
+2005-05-18  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gunidecomp.c: Correct the end of the Hangul 
+       Syllables range, from 0xd7af to 0xd7a3, in several
+       places.  (#301984, Changwoo Ryu)
+
+2005-05-17  Matthias Clasen  <mclasen@redhat.com>
+
+       * tests/tree-test.c (main): Check the return values of
+       g_tree_remove().
+
+       * glib/gtree.c (g_tree_remove, g_tree_steal): Return
+       a boolean indicating wether the key was found.  (#302545,
+       Matthew F. Barnes)
+
+2005-05-06  Brian Cameron  <brian.cameron@sun.com>
+
+       * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
+         Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
+         to allow building of other libraries like pango when 
+         glib is uninstalled.
+
+2005-05-06  Matthias Clasen  <mclasen@redhat.com>
+
+       * tests/option-test.c: Add a testcase.
+       
+       * glib/goption.c (g_option_context_parse): Treat '-'
+       on its own as a non-option argument.  (#168008, Tim Musson,
+       Thomas Leonard and others)
+
+2005-05-05  Owen Taylor  <otaylor@redhat.com>
+
+       * glib/gdataset.[ch] glib/gdatasetprivate.h: Add 
+       g_datalist_set/unset_flags(), g_datalist_get_flags() functions
+       to squeeze some bits into a GDataSet... this is needed for
+       efficient implementation of toggle references in GObject.
+
+       * tests/gobject/references.c tests/gobject/Makefile.am:
+       Add a test case for weak and toggle references.
+
+       * glib/gfileutils.[ch]: Rename g_file_replace() back
+       to g_file_set_contents().
+
+       * glib/glib.symbols: Update.
+
+2005-05-02  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gstring.c (g_str_equal, g_str_hash): Move docs
+       inline.
+
+2005-05-01  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/ghash.h: Rename some parameters to make gtk-doc
+       happy.
+
+       * glib/gutils.c: 
+       * glib/gwin32.c: 
+       * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
+
+2005-04-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
+
+2005-04-28  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
+       when meeting a trailing \\.  (#301373, Benjamin Otte)
+
+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-19  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gutils.h: Minor comment improvement.
+
+2005-04-18  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
+       save_errno was missing in one place.
+
+Sat Apr 16 20:15:44 2005  Soeren Sandmann  <sandmann@redhat.com>
+
+       * glib/gfileutils.c (g_file_replace): Save the errno in various
+       places
+
+       * glib/gfileutils.c (set_umask_permissions): Fork a child and do
+       chmod() to the umask() permissions there.
+
+2005-04-10  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
+       both definitions.  (#300071, Tommi Komulainen)
+
+2005-04-09  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
+
+2005-04-08  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gstdio.h
+       * glib/gstdio.c
+       * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
+       access(), chmod() and creat(). (#169623, #171285)
+
+2005-04-08  Tor Lillqvist  <tml@novell.com>
+
+       Improve g_get_system_data_dirs() on Windows. A library that calls
+       g_get_system_data_dirs() might be installed in a different
+       top-level prefix than GLib or the application being run.
+
+       * glib/gutils.h (g_win32_get_system_data_dirs): New static
+       function defined in this header. Calls
+       g_win32_get_system_data_dirs_for_module() passing the address of
+       itself as parameter. g_get_system_data_dirs() is #defined as this
+       function.
+
+       * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
+       function. If the address parameter is non-NULL, the corresponding
+       module's installation location is used for one of the returned
+       path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
+       glib top-level and application top-level folders.
+       (g_get_system_data_dirs): Now just for backward compatibility on
+       Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
+
+       * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
+
+       * glib/gutils.c (read_aliases): Not used on Windows.
+       (unalias_lang): Don't do anything on Windows, there is no
+       /usr/share/locale/locale.alias file..
+       
+Thu Apr  7 22:51:15 2005  <yosh@gimp.org>
+
+       * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
+       and exe_top_share_dir only in G_OS_WIN32.
+
+2005-04-08  Tor Lillqvist  <tml@novell.com>
+
+       * glib/gutils.c (g_get_system_data_dirs): After investigating more
+       closely the actual use cases of this function, I understand better
+       what it needs to do on Windows. In addition to the Windows
+       COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
+       "share" subfolders of GLib's installation location and the
+       application .exe's installation location, hoping that either
+       matches what the function's caller is looking for.
+
+       * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
+       if available, and store dll name in UTF-8.
+
+2005-04-05  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gfileutils.c (get_contents_stdio): Avoid memory 
+       leaks in borderline cases.  (#172612, Morten Welinder)
+
+2005-04-04  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gconvert.c: Clarify docs in some places. (#172404, 
+       Morten Welinder)
+
+2005-04-03  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is 
+       defined. This was the pre-2.6 behaviour, and without it,
+       G_IMPLEMENT_INLINES cannot be used in multiple .c files
+       at all.  (#165852, Dave Benson)
+
+2005-04-01  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gmain.c (g_child_watch_source_new): Add a note regarding
+       waitpid(-1).
+       (g_child_watch_source_init_multi_threaded): 
+       (g_child_watch_source_init_single): Don't use SA_RESTART,
+       since it causes problems on at least one platform. (#168352)
+
+2005-03-30  Steve Murphy  <murf@e-tools.com>
+
+       * configure.in: Added "rw" to ALL_LINGUAS.
+
+2005-03-30  Sven Neumann  <sven@gimp.org>
+
+       * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
+       that no bytes are read from the file and allocate an empty string.
+
+2005-03-30  Tor Lillqvist  <tml@novell.com>
+
+       * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
+       file descriptors open to devices are readable, since we can't
+       know. fstat() doesn't give any useful information. (#145326)
+
 2005-03-29  Tor Lillqvist  <tml@novell.com>
 
-       * glib/gmain.c (g_poll): If the event fired, assign
+       * glib/gmain.c (g_poll): [Win32] If the event fired, assign
        f->revents=f->events. We can't know whether the upper layer using
        the event actually is readable, writeable or what, so say that all
        the conditions hold. Remove the ResetEvent() call that has been
        ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
        #endif pair of lines, that code is not optional.
+       (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
+       instead of time() and GetTickCount(). Much simpler.
 
 2005-03-28  Matthias Clasen  <mclasen@redhat.com>