Skip to content

Commit

Permalink
Remove Tessel struct-fu 8to16 workaround
Browse files Browse the repository at this point in the history
Fixes: #22
  • Loading branch information
jviotti committed Dec 7, 2015
1 parent 3db5606 commit 969edb4
Showing 1 changed file with 9 additions and 10 deletions.
19 changes: 9 additions & 10 deletions dir.js
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -268,26 +268,25 @@ dir.addFile = function (vol, dirChain, entryInfo, opts, cb) {
var workaroundTessel427 = ('\uFFFF'.length !== 1); var workaroundTessel427 = ('\uFFFF'.length !== 1);
var S_lde_f = S.longDirEntry.fields, var S_lde_f = S.longDirEntry.fields,
ENTRY_CHUNK_LEN = (S_lde_f.Name1.size + S_lde_f.Name2.size + S_lde_f.Name3.size)/2, ENTRY_CHUNK_LEN = (S_lde_f.Name1.size + S_lde_f.Name2.size + S_lde_f.Name3.size)/2,
paddedName = (workaroundTessel427) ? require('struct-fu/8to16').fixString(name) : name, partialLen = name.length % ENTRY_CHUNK_LEN,
partialLen = paddedName.length % ENTRY_CHUNK_LEN,
paddingNeeded = partialLen && (ENTRY_CHUNK_LEN - partialLen); paddingNeeded = partialLen && (ENTRY_CHUNK_LEN - partialLen);
if (workaroundTessel427) { if (workaroundTessel427) {
if (paddingNeeded--) paddedName.push(0); if (paddingNeeded--) name.push(0);
while (paddingNeeded-- > 0) paddedName.push(0xFFFF); while (paddingNeeded-- > 0) name.push(0xFFFF);
} else { } else {
if (paddingNeeded--) paddedName += '\u0000'; if (paddingNeeded--) name += '\u0000';
while (paddingNeeded-- > 0) paddedName += '\uFFFF'; while (paddingNeeded-- > 0) name += '\uFFFF';
} }
// now fill in as many entries as it takes // now fill in as many entries as it takes
var off = 0, var off = 0,
ord = 1; ord = 1;
while (off < paddedName.length) entries.push({ while (off < name.length) entries.push({
Ord: ord++, Ord: ord++,
Name1: paddedName.slice(off, off+=S_lde_f.Name1.size/2), Name1: name.slice(off, off+=S_lde_f.Name1.size/2),
Attr_raw: S.longDirFlag, Attr_raw: S.longDirFlag,
Chksum: null, Chksum: null,
Name2: paddedName.slice(off, off+=S_lde_f.Name2.size/2), Name2: name.slice(off, off+=S_lde_f.Name2.size/2),
Name3: paddedName.slice(off, off+=S_lde_f.Name3.size/2) Name3: name.slice(off, off+=S_lde_f.Name3.size/2)
}); });
entries[entries.length - 1].Ord |= S.lastLongFlag; entries[entries.length - 1].Ord |= S.lastLongFlag;
} }
Expand Down

0 comments on commit 969edb4

Please sign in to comment.