summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Hughes <richard@hughsie.com>2015-08-25 21:25:45 +0100
committerRichard Hughes <richard@hughsie.com>2015-08-26 13:50:14 +0100
commite5de0fd2232ce682c39d54300508a6f51833651a (patch)
tree00bd7ad17328ee9e824e7c55af81cb56de53ee71
parent5038cd9e91be7575451f1ed30446a8db31786e00 (diff)
downloadgcab-e5de0fd2232ce682c39d54300508a6f51833651a.tar.gz
Automatically set flag if UTF-8 encoding detected
Resolves: https://bugzilla.gnome.org/show_bug.cgi?id=754091
-rw-r--r--libgcab/gcab-cabinet.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libgcab/gcab-cabinet.c b/libgcab/gcab-cabinet.c
index faac13c..e81b052 100644
--- a/libgcab/gcab-cabinet.c
+++ b/libgcab/gcab-cabinet.c
@@ -299,6 +299,10 @@ gcab_cabinet_write (GCabCabinet *self,
file->cfile.uoffset = prevf ? prevf->uoffset + prevf->usize : 0;
prevf = &file->cfile;
+ /* automatically set flag if UTF-8 encoding */
+ if (!g_str_is_ascii (file->cfile.name))
+ file->cfile.fattr |= GCAB_FILE_ATTRIBUTE_NAME_IS_UTF;
+
if (!cfile_write (&file->cfile, dstream, cancellable, error))
goto end;
}