mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-05-14 21:51:04 +00:00
Update pipe-ipc.js
This commit is contained in:
parent
44a9a32775
commit
59e76de85d
|
@ -53,6 +53,19 @@ var CdoUS_ASCII = "us-ascii";
|
||||||
var CdoUTF_7 = "utf-7";
|
var CdoUTF_7 = "utf-7";
|
||||||
var CdoUTF_8 = "utf-8";
|
var CdoUTF_8 = "utf-8";
|
||||||
|
|
||||||
|
var CRC32Table = (function() {
|
||||||
|
var c;
|
||||||
|
var crcTable = [];
|
||||||
|
for (var n =0; n < 256; n++) {
|
||||||
|
c = n;
|
||||||
|
for(var k =0; k < 8; k++){
|
||||||
|
c = ((c&1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));
|
||||||
|
}
|
||||||
|
crcTable[n] = c;
|
||||||
|
}
|
||||||
|
return crcTable;
|
||||||
|
})();
|
||||||
|
|
||||||
function createUUIDv4() {
|
function createUUIDv4() {
|
||||||
var randomize = Math.random;
|
var randomize = Math.random;
|
||||||
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
||||||
|
@ -61,6 +74,17 @@ function createUUIDv4() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function CRC32(str) {
|
||||||
|
var crcTable = CRC32Table;
|
||||||
|
var crc = 0 ^ (-1);
|
||||||
|
|
||||||
|
for (var i = 0; i < str.length; i++ ) {
|
||||||
|
crc = (crc >>> 8) ^ crcTable[(crc ^ str.charCodeAt(i)) & 0xFF];
|
||||||
|
}
|
||||||
|
|
||||||
|
return ((crc ^ (-1)) >>> 0).toString(16).padStart(8, '0');
|
||||||
|
}
|
||||||
|
|
||||||
function createFSO() {
|
function createFSO() {
|
||||||
return CreateObject("Scripting.FileSystemObject");
|
return CreateObject("Scripting.FileSystemObject");
|
||||||
}
|
}
|
||||||
|
@ -161,11 +185,17 @@ function PipeIPC() {
|
||||||
this.tmpfile = this.savefile + ".tmp";
|
this.tmpfile = this.savefile + ".tmp";
|
||||||
|
|
||||||
// read a text from save file
|
// read a text from save file
|
||||||
|
var isExistsSaveFile = createFSO().FileExists(this.savefile);
|
||||||
var isExistsTmpFile = createFSO().FileExists(this.tmpfile);
|
var isExistsTmpFile = createFSO().FileExists(this.tmpfile);
|
||||||
if (!isExistsTmpFile) {
|
while (isExistsSaveFile && !isExistsTmpFile) {
|
||||||
var handler = createFSO().OpenTextFile(this.tmpfile, ForWriting, true, TristateTrue);
|
try {
|
||||||
handler.Write(this.readTextFromFile(this.savefile));
|
var fso = createFSO().OpenTextFile(this.tmpfile, ForWriting, true, TristateTrue);
|
||||||
handler.Close();
|
fso.Write(this.readTextFromFile(this.savefile));
|
||||||
|
fso.Close();
|
||||||
|
isExistsTmpFile = createFSO().FileExists(this.tmpfile);
|
||||||
|
} catch (e) {
|
||||||
|
isExistsTmpFile = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// with iomode (default: ForAppending)
|
// with iomode (default: ForAppending)
|
||||||
|
@ -280,11 +310,13 @@ function PipeIPC() {
|
||||||
ado.Close();
|
ado.Close();
|
||||||
|
|
||||||
// Write a new temporary file
|
// Write a new temporary file
|
||||||
|
/*
|
||||||
if (this.maxSentences > 0) {
|
if (this.maxSentences > 0) {
|
||||||
var handler = createFSO().OpenTextFile(src, ForWriting, true, TristateTrue);
|
var handler = createFSO().OpenTextFile(src, ForWriting, true, TristateTrue);
|
||||||
handler.Write(str);
|
handler.Write(str);
|
||||||
handler.Close();
|
handler.Close();
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
// Close the temporary file
|
// Close the temporary file
|
||||||
fso.Close();
|
fso.Close();
|
||||||
|
@ -393,6 +425,7 @@ exports.connect = function(path, callback) {
|
||||||
};
|
};
|
||||||
|
|
||||||
exports.createUUIDv4 = createUUIDv4;
|
exports.createUUIDv4 = createUUIDv4;
|
||||||
|
exports.CRC32 = CRC32;
|
||||||
|
|
||||||
exports.ForReading = ForReading;
|
exports.ForReading = ForReading;
|
||||||
exports.ForWriting = ForWriting;
|
exports.ForWriting = ForWriting;
|
||||||
|
@ -407,7 +440,7 @@ exports.adSaveCreateNotExist = adSaveCreateNotExist;
|
||||||
exports.adSaveCreateOverWrite = adSaveCreateOverWrite;
|
exports.adSaveCreateOverWrite = adSaveCreateOverWrite;
|
||||||
exports.adModeReadWrite = adModeReadWrite;
|
exports.adModeReadWrite = adModeReadWrite;
|
||||||
|
|
||||||
exports.VERSIONINFO = "PIPE-based IPC Module (pipe-ipc.js) version 0.1.10";
|
exports.VERSIONINFO = "PIPE-based IPC Module (pipe-ipc.js) version 0.1.11";
|
||||||
exports.AUTHOR = "abuse@catswords.net";
|
exports.AUTHOR = "abuse@catswords.net";
|
||||||
exports.global = global;
|
exports.global = global;
|
||||||
exports.require = require;
|
exports.require = require;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user