diff --git a/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js b/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js index 09b008594..e012e406e 100644 --- a/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js +++ b/Objective-J/CommonJS/lib/objective-j/jake/bundletask.js @@ -595,7 +595,7 @@ BundleTask.prototype.defineSpritedImagesTask = function() var folder = anEnvironment.name() + ".environment", resourcesPath = FILE.join(this.buildIntermediatesProductPath(), folder, "Resources", ""); - function isDataResource(/*String*/ aFilename) + function isDataResource(aFilename) { return FILE.isFile(aFilename) && aFilename.indexOf(resourcesPath) === 0 && isImage(aFilename); } @@ -605,17 +605,24 @@ BundleTask.prototype.defineSpritedImagesTask = function() filedir (dataURLPath, function(aTask) { + var prerequisites = aTask.prerequisites().filter(isDataResource); + + if (!prerequisites.length) + { + if (FILE.exists(dataURLPath)) + FILE.remove(dataURLPath); + + return; + } + TERM.stream.print("Creating data URLs file... \0green(" + dataURLPath +"\0)"); var dataURLStream = FILE.open(dataURLPath, "w+", { charset:"UTF-8" }); dataURLStream.write("@STATIC;1.0;"); - aTask.prerequisites().forEach(function(aFilename) + prerequisites.forEach(function(aFilename) { - if (!isDataResource(aFilename)) - return; - var resourcePath = "Resources/" + FILE.relative(resourcesPath, aFilename); dataURLStream.write("u;" + resourcePath.length + ";" + resourcePath); @@ -636,17 +643,24 @@ BundleTask.prototype.defineSpritedImagesTask = function() filedir (MHTMLPath, function(aTask) { + var prerequisites = aTask.prerequisites().filter(isDataResource); + + if (!prerequisites.length) + { + if (FILE.exists(MHTMLPath)) + FILE.remove(MHTMLPath); + + return; + } + TERM.stream.print("Creating MHTML paths file... \0green(" + MHTMLPath +"\0)"); var MHTMLStream = FILE.open(MHTMLPath, "w+", { charset:"UTF-8" }); MHTMLStream.write("@STATIC;1.0;"); - aTask.prerequisites().forEach(function(aFilename) + prerequisites.forEach(function(aFilename) { - if (!isDataResource(aFilename)) - return; - var resourcePath = "Resources/" + FILE.relative(resourcesPath, aFilename), MHTMLResourcePath = "mhtml:" + FILE.join(folder, "MHTMLData.txt!") + resourcePath; @@ -663,17 +677,24 @@ BundleTask.prototype.defineSpritedImagesTask = function() filedir (MHTMLDataPath, function(aTask) { + var prerequisites = aTask.prerequisites().filter(isDataResource); + + if (!prerequisites.length) + { + if (FILE.exists(MHTMLDataPath)) + FILE.remove(MHTMLDataPath); + + return; + } + TERM.stream.print("Creating MHTML images file... \0green(" + MHTMLDataPath +"\0)"); var MHTMLDataStream = FILE.open(MHTMLDataPath, "w+", { charset:"UTF-8" }); MHTMLDataStream.write("/*\r\nContent-Type: multipart/related; boundary=\"_ANY_STRING_WILL_DO_AS_A_SEPARATOR\"\r\n\r\n"); - aTask.prerequisites().forEach(function(aFilename) + prerequisites.forEach(function(aFilename) { - if (!isDataResource(aFilename)) - return; - var resourcePath = "Resources/" + FILE.relative(resourcesPath, aFilename); MHTMLDataStream.write("--_ANY_STRING_WILL_DO_AS_A_SEPARATOR\r\n");