[geany/geany-plugins] 884f90: Use locale encoding for file operations instead of utf8
Jiří Techet
git-noreply at xxxxx
Mon Apr 1 01:03:38 UTC 2019
Branch: refs/heads/master
Author: Jiří Techet <techet at gmail.com>
Committer: Jiří Techet <techet at gmail.com>
Date: Sun, 14 Oct 2018 19:19:46 UTC
Commit: 884f90dce152f192f766f1d7990c82d7b9219a93
https://github.com/geany/geany-plugins/commit/884f90dce152f192f766f1d7990c82d7b9219a93
Log Message:
-----------
Use locale encoding for file operations instead of utf8
Modified Paths:
--------------
projectorganizer/src/prjorg-utils.c
Modified: projectorganizer/src/prjorg-utils.c
43 lines changed, 24 insertions(+), 19 deletions(-)
===================================================================
@@ -124,26 +124,36 @@ void close_file(gchar *utf8_name)
gboolean create_file(gchar *utf8_name)
{
- int fd;
- GError *err;
-
- fd = g_open(utf8_name, O_CREAT|O_EXCL, 0660); // rw-rw----
- if (fd == -1) // not created?
- return FALSE;
- g_close(fd, &err);
- return TRUE;
+ gchar *name = utils_get_locale_from_utf8(utf8_name);
+ gint fd = g_open(name, O_CREAT|O_EXCL, 0660); // rw-rw----
+ gboolean success = FALSE;
+
+ if (fd != -1)
+ {
+ GError *err;
+ success = TRUE;
+ g_close(fd, &err);
+ }
+ g_free(name);
+ return success;
}
gboolean create_dir(char *utf8_name)
{
- return g_mkdir_with_parents(utf8_name, 0770) == 0; // rwxrwx---
+ gchar *name = utils_get_locale_from_utf8(utf8_name);
+ gboolean ret = g_mkdir_with_parents(name, 0770) == 0; // rwxrwx---
+ g_free(name);
+ return ret;
}
gboolean remove_file_or_dir(char *utf8_name)
{
- return g_remove(utf8_name) == 0;
+ gchar *name = utils_get_locale_from_utf8(utf8_name);
+ gboolean ret = g_remove(utf8_name) == 0;
+ g_free(name);
+ return ret;
}
@@ -157,19 +167,14 @@ static gboolean document_rename(GeanyDocument *document, gchar *utf8_name)
gboolean rename_file_or_dir(gchar *utf8_oldname, gchar *utf8_newname)
{
- GeanyDocument *doc;
- gchar *oldname;
- gchar *newname;
- int res;
-
- doc = document_find_by_filename(utf8_oldname);
+ GeanyDocument *doc = document_find_by_filename(utf8_oldname);
if (doc)
return document_rename(doc, utf8_newname);
else
{
- oldname = utils_get_locale_from_utf8(utf8_oldname);
- newname = utils_get_locale_from_utf8(utf8_newname);
- res = g_rename(oldname, newname);
+ gchar *oldname = utils_get_locale_from_utf8(utf8_oldname);
+ gchar *newname = utils_get_locale_from_utf8(utf8_newname);
+ gint res = g_rename(oldname, newname);
g_free(oldname);
g_free(newname);
return res == 0;
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Plugins-Commits
mailing list