Revert "Remove $native.md5ForPath()"

This reverts commit 832df7149e.
This commit is contained in:
Kevin Sawicki
2013-03-12 08:23:54 -07:00
parent a5a41cf292
commit 6f5138a56e
2 changed files with 19 additions and 4 deletions

View File

@@ -25,7 +25,7 @@ namespace v8_extensions {
const char* methodNames[] = {
"absolute", "writeToPasteboard", "readFromPasteboard", "quit",
"watchPath", "unwatchPath", "getWatchedPaths", "unwatchAllPaths",
"moveToTrash", "reload", "getPlatform", "setWindowState",
"moveToTrash", "reload", "md5ForPath", "getPlatform", "setWindowState",
"getWindowState", "isMisspelled", "getCorrectionsForMisspelling"
};
@@ -159,6 +159,23 @@ namespace v8_extensions {
else if (name == "reload") {
CefV8Context::GetCurrentContext()->GetBrowser()->ReloadIgnoreCache();
}
else if (name == "md5ForPath") {
NSString *path = stringFromCefV8Value(arguments[0]);
unsigned char outputData[CC_MD5_DIGEST_LENGTH];
NSData *inputData = [[NSData alloc] initWithContentsOfFile:path];
CC_MD5([inputData bytes], [inputData length], outputData);
[inputData release];
NSMutableString *hash = [[NSMutableString alloc] init];
for (NSUInteger i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
[hash appendFormat:@"%02x", outputData[i]];
}
retval = CefV8Value::CreateString([hash UTF8String]);
return true;
}
else if (name == "getPlatform") {
retval = CefV8Value::CreateString("mac");
return true;

View File

@@ -1,5 +1,4 @@
fs = nodeRequire 'fs'
crypto = nodeRequire 'crypto'
paths = [
"#{window.resourcePath}/spec"
@@ -87,8 +86,7 @@ createCacheDirectory = ->
fs.mkdirSync('/tmp/atom-compiled-scripts') unless __exists('/tmp/atom-compiled-scripts')
getCacheFilePath = (path) ->
md5 = crypto.createHash('md5').update(fs.readFileSync(path)).digest('hex')
"/tmp/atom-compiled-scripts/#{md5}"
"/tmp/atom-compiled-scripts/#{$native.md5ForPath(path)}"
resolve = (name, {verifyExistence}={}) ->
verifyExistence ?= true