Index: modules/image/image.test
===================================================================
--- modules/image/image.test	(revision 1)
+++ modules/image/image.test	(working copy)
@@ -321,13 +321,15 @@
       'image_desaturate' => array(
         // No options for desaturate.
       ),
-      'image_rotate' => array(
-        'data[degrees]' => 5,
-        'data[random]' => 1,
-        'data[bgcolor]' => '#FFFF00',
-      ),
+      
     );
-
+    if(function_exists('imagerotate')) {
+        $effect_edits['image_rotate'] = array(
+            'data[degrees]' => 5,
+            'data[random]' => 1,
+            'data[bgcolor]' => '#FFFF00',
+          );
+    }
     // Add style form.
 
     $edit = array(
Index: modules/image/image.effects.inc
===================================================================
--- modules/image/image.effects.inc	(revision 1)
+++ modules/image/image.effects.inc	(working copy)
@@ -44,14 +44,20 @@
       'help' => t('Desaturate converts an image to grayscale.'),
       'effect callback' => 'image_desaturate_effect',
     ),
-    'image_rotate' => array(
+      );
+  if(function_exists('imagerotate')) {
+  $effects['image_rotate'] = array(
       'label' => t('Rotate'),
       'help' => t('Rotating an image may cause the dimensions of an image to increase to fit the diagonal.'),
       'effect callback' => 'image_rotate_effect',
       'form callback' => 'image_rotate_form',
       'summary theme' => 'image_rotate_summary',
-    ),
-  );
+    );
+  }else {//if the imagerotate() function is not exist
+      drupal_set_message(t('"Rotate" effect is not supported. You need update your gd extension.'), 'warning');
+      
+  }
+  
 
   return $effects;
 }
