diff --git a/media_youtube.module b/media_youtube.module
index 2c42da7..7b34646 100644
--- a/media_youtube.module
+++ b/media_youtube.module
@@ -151,7 +151,10 @@ function media_youtube_add($form, &$form_state = array()) {
     $empty = TRUE;
   }
   else {
-    foreach ($search['entry'] as $video) {
+    // $search['entry'] is different depending on whether there is a single
+    // result or multiple results. So normalise it.
+    $videos = isset($search['entry']['id']) ? array($search['entry']) : $search['entry'];
+    foreach ($videos as $video) {
       try {
         $uri = media_parse_to_uri($video['link'][0]['@attributes']['href']);
       }
