diff --git a/modules/image/image.module b/modules/image/image.module
index 008a365..1441f8c 100644
--- a/modules/image/image.module
+++ b/modules/image/image.module
@@ -818,9 +818,18 @@ function image_style_create_derivative($style, $source, $destination) {
  *   An image style array.
  */
 function image_style_flush($style) {
-  $style_directory = drupal_realpath(file_default_scheme() . '://styles/' . $style['name']);
-  if (is_dir($style_directory)) {
-    file_unmanaged_delete_recursive($style_directory);
+  $schemes[] = TRUE;
+  foreach (field_info_fields() as $field) {
+    if ($field['module'] == 'image') {
+      $schemes[] = $field['settings']['uri_scheme'];
+    }
+  }
+
+  foreach (array_unique($schemes) as $scheme) {
+    $style_directory = drupal_realpath($scheme . '://styles/' . $style['name']);
+    if (is_dir($style_directory)) {
+      file_unmanaged_delete_recursive($style_directory);
+    }
   }
 
   // Let other modules update as necessary on flush.
