X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fdentry.c;h=7cd93ed1ab9e42a21aa0dfcaf6ae31d6e5e441c7;hp=698e137c10dab4f90d0f744111e56d6629f28cde;hb=ff556d243953bd6df1399466c452f327feae2ed9;hpb=8244af933d579b3dcd6245a6995d96a86e5ab322 diff --git a/src/dentry.c b/src/dentry.c index 698e137c..7cd93ed1 100644 --- a/src/dentry.c +++ b/src/dentry.c @@ -1129,16 +1129,12 @@ inode_set_unnamed_stream(struct wim_inode *inode, const void *data, size_t len, void *buf; sha1_buffer(data, len, hash); - existing_lte = __lookup_resource(lookup_table, hash); - if (existing_lte) { wimlib_assert(wim_resource_size(existing_lte) == len); lte = existing_lte; lte->refcnt++; } else { - void *buf; - lte = new_lookup_table_entry(); if (!lte) return WIMLIB_ERR_NOMEM; @@ -1275,14 +1271,18 @@ replace_forbidden_characters(utf16lechar *name) if (*p == '/') #endif { + #ifdef __WIN32__ + *p = cpu_to_le16(0xfffd); + #else + *p = '?'; + #endif if (name) { WARNING("File, directory, or stream name \"%"WS"\"\n" " contains forbidden characters; " - "replacing them with Unicode codepoint U+001A", + "substituting replacement characters.", name); name = NULL; } - *p = 0x1a; } } }