diff --git a/imagecache.module b/imagecache.module
index 55d48ce..cf2c820 100644
--- a/imagecache.module
+++ b/imagecache.module
@@ -369,6 +369,12 @@ function imagecache_create_url($presetname, $filepath, $bypass_browser_cache = F
   );
   $path = $prefix[variable_get('file_downloads', FILE_DOWNLOADS_PUBLIC)] .'/'. $derivative_path;
 
+  // if clean url is not enabled, generate image now
+  if (variable_get('file_downloads', FILE_DOWNLOADS_PUBLIC) == FILE_DOWNLOADS_PUBLIC && variable_get('clean_url', '0') == '0'){
+		//this function checks if the derivative image already exists
+		imagecache_generate_image($presetname, $filepath);
+  }
+  
   return url($path, $args + array('absolute' => $absolute));
 }
 
