diff --git a/scripts/compress-worker.js b/scripts/compress-worker.js
index 4c9616bffe4a048a05e3cbcd4288ef65f60fb2ad..a65b751fc86c677c2f83117100f014878a5d3228 100644
--- a/scripts/compress-worker.js
+++ b/scripts/compress-worker.js
@@ -89,7 +89,9 @@ function compressResource(staticPath, name, files, cb) {
 }
 
 function cachify_embedded (css_src) {
-  return css_src.replace(/url\s*\(['"](.*)\s*['"]\s*\)/g, function (str, url) {
+  // RegExp is set up to handle multiple url's per declaration, which is
+  // possible for things like background-images.
+  return css_src.replace(/url\s*\(['"]([^\)'"]+)\s*['"]\s*\)/g, function (str, url) {
     // This will throw an error if url doesn't exist. This is good as we will
     // catch typos during build.
     logger.info("For " + str + " making " + url + " into " + cachify.cachify(url));
@@ -107,4 +109,4 @@ process.on('message', function(m) {
       info: info
     });
   });
-});
\ No newline at end of file
+});