mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-21 17:52:11 +01:00
Look also for (illegal) forward slashes in the template.
2001-01-05 Tor Lillqvist <tml@iki.fi> * gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal) forward slashes in the template. * gutils.c (g_path_skip_root): On Win32, skip the \\server\share part of UNC paths. On all platforms, skip several initial slashes. Add a few comments. (g_get_any_init): On Win32, in case HOME is Unix-style with (forward) slashes (some other applications apparently set it up this way, convert to backslashed form. * configure.in (glib_os): Remove stray 'v'. Add case for mingw, although using configure for mingw surely doesn't work yet. * glib.def: Update.
This commit is contained in:
parent
568691c600
commit
ebf8fe6a92
17
ChangeLog
17
ChangeLog
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2001-01-05 Tor Lillqvist <tml@iki.fi>
|
||||||
|
|
||||||
|
* gfileutils.c (g_file_open_tmp): (Win32:) Look also for (illegal)
|
||||||
|
forward slashes in the template.
|
||||||
|
|
||||||
|
* gutils.c (g_path_skip_root): On Win32, skip the \\server\share
|
||||||
|
part of UNC paths. On all platforms, skip several initial
|
||||||
|
slashes. Add a few comments.
|
||||||
|
(g_get_any_init): On Win32, in case HOME is Unix-style with
|
||||||
|
(forward) slashes (some other applications apparently set it up
|
||||||
|
this way, convert to backslashed form.
|
||||||
|
|
||||||
|
* configure.in (glib_os): Remove stray 'v'. Add case for mingw,
|
||||||
|
although using configure for mingw surely doesn't work yet.
|
||||||
|
|
||||||
|
* glib.def: Update.
|
||||||
|
|
||||||
2001-01-02 Havoc Pennington <hp@redhat.com>
|
2001-01-02 Havoc Pennington <hp@redhat.com>
|
||||||
|
|
||||||
* configure.in: remove glib-config-2.0
|
* configure.in: remove glib-config-2.0
|
||||||
|
@ -1749,7 +1749,10 @@ case $host in
|
|||||||
*-*-cygwin*)
|
*-*-cygwin*)
|
||||||
glib_os="#define G_OS_UNIX
|
glib_os="#define G_OS_UNIX
|
||||||
#define G_WITH_CYGWIN"
|
#define G_WITH_CYGWIN"
|
||||||
v ;;
|
;;
|
||||||
|
*-*-mingw*)
|
||||||
|
glib_os="#define G_OS_WIN32"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
glib_os="#define G_OS_UNIX"
|
glib_os="#define G_OS_UNIX"
|
||||||
;;
|
;;
|
||||||
|
@ -625,7 +625,11 @@ g_file_open_tmp (const char *tmpl,
|
|||||||
if (tmpl == NULL)
|
if (tmpl == NULL)
|
||||||
tmpl = ".XXXXXX";
|
tmpl = ".XXXXXX";
|
||||||
|
|
||||||
if (strchr (tmpl, G_DIR_SEPARATOR))
|
if (strchr (tmpl, G_DIR_SEPARATOR)
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
|| strchr (tmpl, '/')
|
||||||
|
#endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
g_set_error (error,
|
g_set_error (error,
|
||||||
G_FILE_ERROR,
|
G_FILE_ERROR,
|
||||||
|
3
glib.def
3
glib.def
@ -231,11 +231,12 @@ EXPORTS
|
|||||||
g_main_context_query
|
g_main_context_query
|
||||||
g_main_context_remove_poll
|
g_main_context_remove_poll
|
||||||
g_main_context_set_poll_func
|
g_main_context_set_poll_func
|
||||||
g_main_loop_destroy
|
|
||||||
g_main_loop_is_running
|
g_main_loop_is_running
|
||||||
g_main_loop_new
|
g_main_loop_new
|
||||||
g_main_loop_quit
|
g_main_loop_quit
|
||||||
|
g_main_loop_ref
|
||||||
g_main_loop_run
|
g_main_loop_run
|
||||||
|
g_main_loop_unref
|
||||||
g_malloc
|
g_malloc
|
||||||
g_malloc0
|
g_malloc0
|
||||||
g_markup_error_quark
|
g_markup_error_quark
|
||||||
|
@ -625,7 +625,11 @@ g_file_open_tmp (const char *tmpl,
|
|||||||
if (tmpl == NULL)
|
if (tmpl == NULL)
|
||||||
tmpl = ".XXXXXX";
|
tmpl = ".XXXXXX";
|
||||||
|
|
||||||
if (strchr (tmpl, G_DIR_SEPARATOR))
|
if (strchr (tmpl, G_DIR_SEPARATOR)
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
|| strchr (tmpl, '/')
|
||||||
|
#endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
g_set_error (error,
|
g_set_error (error,
|
||||||
G_FILE_ERROR,
|
G_FILE_ERROR,
|
||||||
|
@ -231,11 +231,12 @@ EXPORTS
|
|||||||
g_main_context_query
|
g_main_context_query
|
||||||
g_main_context_remove_poll
|
g_main_context_remove_poll
|
||||||
g_main_context_set_poll_func
|
g_main_context_set_poll_func
|
||||||
g_main_loop_destroy
|
|
||||||
g_main_loop_is_running
|
g_main_loop_is_running
|
||||||
g_main_loop_new
|
g_main_loop_new
|
||||||
g_main_loop_quit
|
g_main_loop_quit
|
||||||
|
g_main_loop_ref
|
||||||
g_main_loop_run
|
g_main_loop_run
|
||||||
|
g_main_loop_unref
|
||||||
g_malloc
|
g_malloc
|
||||||
g_malloc0
|
g_malloc0
|
||||||
g_markup_error_quark
|
g_markup_error_quark
|
||||||
|
@ -471,10 +471,25 @@ g_path_skip_root (gchar *file_name)
|
|||||||
{
|
{
|
||||||
g_return_val_if_fail (file_name != NULL, NULL);
|
g_return_val_if_fail (file_name != NULL, NULL);
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
/* Skip \\server\share\ */
|
||||||
|
if (file_name[0] == G_DIR_SEPARATOR &&
|
||||||
|
file_name[1] == G_DIR_SEPARATOR &&
|
||||||
|
file_name[2] &&
|
||||||
|
strchr (file_name + 2, G_DIR_SEPARATOR) > file_name + 2)
|
||||||
|
return strchr (file_name + 2, G_DIR_SEPARATOR) + 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Skip initial slashes */
|
||||||
if (file_name[0] == G_DIR_SEPARATOR)
|
if (file_name[0] == G_DIR_SEPARATOR)
|
||||||
return file_name + 1;
|
{
|
||||||
|
while (file_name[0] == G_DIR_SEPARATOR)
|
||||||
|
file_name++;
|
||||||
|
return file_name;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef G_OS_WIN32
|
#ifdef G_OS_WIN32
|
||||||
|
/* Skip X:\ */
|
||||||
if (isalpha (file_name[0]) && file_name[1] == ':' && file_name[2] == G_DIR_SEPARATOR)
|
if (isalpha (file_name[0]) && file_name[1] == ':' && file_name[2] == G_DIR_SEPARATOR)
|
||||||
return file_name + 3;
|
return file_name + 3;
|
||||||
#endif
|
#endif
|
||||||
@ -687,15 +702,21 @@ g_get_any_init (void)
|
|||||||
g_home_dir = g_strdup (g_getenv ("HOME"));
|
g_home_dir = g_strdup (g_getenv ("HOME"));
|
||||||
|
|
||||||
#ifdef G_OS_WIN32
|
#ifdef G_OS_WIN32
|
||||||
if (!g_home_dir)
|
/* In case HOME is Unix-style (it happens), convert it to
|
||||||
|
* Windows style.
|
||||||
|
*/
|
||||||
|
if (g_home_dir)
|
||||||
|
{
|
||||||
|
gchar *p;
|
||||||
|
while ((p = strchr (g_home_dir, '/')) != NULL)
|
||||||
|
*p = '\\';
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
/* The official way to specify a home directory on NT is
|
/* The official way to specify a home directory on NT is
|
||||||
* the HOMEDRIVE and HOMEPATH environment variables.
|
* the HOMEDRIVE and HOMEPATH environment variables. At least
|
||||||
*
|
* it was at some time.
|
||||||
* This is inside #ifdef G_OS_WIN32 because with the cygwin dll,
|
|
||||||
* HOME should be a POSIX style pathname.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (getenv ("HOMEDRIVE") != NULL && getenv ("HOMEPATH") != NULL)
|
if (getenv ("HOMEDRIVE") != NULL && getenv ("HOMEPATH") != NULL)
|
||||||
{
|
{
|
||||||
gchar *homedrive, *homepath;
|
gchar *homedrive, *homepath;
|
||||||
|
35
gutils.c
35
gutils.c
@ -471,10 +471,25 @@ g_path_skip_root (gchar *file_name)
|
|||||||
{
|
{
|
||||||
g_return_val_if_fail (file_name != NULL, NULL);
|
g_return_val_if_fail (file_name != NULL, NULL);
|
||||||
|
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
/* Skip \\server\share\ */
|
||||||
|
if (file_name[0] == G_DIR_SEPARATOR &&
|
||||||
|
file_name[1] == G_DIR_SEPARATOR &&
|
||||||
|
file_name[2] &&
|
||||||
|
strchr (file_name + 2, G_DIR_SEPARATOR) > file_name + 2)
|
||||||
|
return strchr (file_name + 2, G_DIR_SEPARATOR) + 1;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Skip initial slashes */
|
||||||
if (file_name[0] == G_DIR_SEPARATOR)
|
if (file_name[0] == G_DIR_SEPARATOR)
|
||||||
return file_name + 1;
|
{
|
||||||
|
while (file_name[0] == G_DIR_SEPARATOR)
|
||||||
|
file_name++;
|
||||||
|
return file_name;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef G_OS_WIN32
|
#ifdef G_OS_WIN32
|
||||||
|
/* Skip X:\ */
|
||||||
if (isalpha (file_name[0]) && file_name[1] == ':' && file_name[2] == G_DIR_SEPARATOR)
|
if (isalpha (file_name[0]) && file_name[1] == ':' && file_name[2] == G_DIR_SEPARATOR)
|
||||||
return file_name + 3;
|
return file_name + 3;
|
||||||
#endif
|
#endif
|
||||||
@ -687,15 +702,21 @@ g_get_any_init (void)
|
|||||||
g_home_dir = g_strdup (g_getenv ("HOME"));
|
g_home_dir = g_strdup (g_getenv ("HOME"));
|
||||||
|
|
||||||
#ifdef G_OS_WIN32
|
#ifdef G_OS_WIN32
|
||||||
if (!g_home_dir)
|
/* In case HOME is Unix-style (it happens), convert it to
|
||||||
|
* Windows style.
|
||||||
|
*/
|
||||||
|
if (g_home_dir)
|
||||||
|
{
|
||||||
|
gchar *p;
|
||||||
|
while ((p = strchr (g_home_dir, '/')) != NULL)
|
||||||
|
*p = '\\';
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
/* The official way to specify a home directory on NT is
|
/* The official way to specify a home directory on NT is
|
||||||
* the HOMEDRIVE and HOMEPATH environment variables.
|
* the HOMEDRIVE and HOMEPATH environment variables. At least
|
||||||
*
|
* it was at some time.
|
||||||
* This is inside #ifdef G_OS_WIN32 because with the cygwin dll,
|
|
||||||
* HOME should be a POSIX style pathname.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (getenv ("HOMEDRIVE") != NULL && getenv ("HOMEPATH") != NULL)
|
if (getenv ("HOMEDRIVE") != NULL && getenv ("HOMEPATH") != NULL)
|
||||||
{
|
{
|
||||||
gchar *homedrive, *homepath;
|
gchar *homedrive, *homepath;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user