--- sites/all/modules/mediafield_display/mediafield_display.module	2008-11-07 12:32:25.000000000 +0000
+++ sites/all/modules/mediafield_display/mediafield_displayNew.module	2008-11-07 12:32:29.000000000 +0000
@@ -156,7 +156,11 @@ function theme_mediafield_display_1pixel
   $flashvars = drupal_query_string_encode($options);
 
   // This is a fix for http://drupal.org/node/158687.
-  $flashvars = str_replace('http%3A/%252F', 'http://', $flashvars);
+  if (stristr($flashvars, 'http%3A')) {
+    $flashvars = str_replace('http%3A/%252F', 'http://', $flashvars);
+  } elseif (stristr($flashvars, 'https%3A')) {
+    $flashvars = str_replace('https%3A/%252F', 'https://', $flashvars);
+  }
 
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="290" height="24">
@@ -181,7 +185,11 @@ function theme_mediafield_display_button
   $options['song_url'] = $file_url;
   $options['song_title'] = check_plain($file_title);
   // str_replace() is to fix issue in Drupal 5.2.
-  $url = $base_url .'/'. drupal_get_path('module', 'mediafield_display') .'/players/button.swf?'. str_replace('http%3A/%252F', 'http://', drupal_query_string_encode($options));
+  if (stristr(drupal_query_string_encode($options), 'http%3A')) {
+      $url = $base_url .'/'. drupal_get_path('module', 'mediafield_display') .'/players/button.swf?'. str_replace('http%3A/%252F', 'http://', drupal_query_string_encode($options));
+  } elseif (stristr(drupal_query_string_encode($options), 'https%3A')) {
+      $url = $base_url .'/'. drupal_get_path('module', 'mediafield_display') .'/players/button.swf?'. str_replace('https%3A/%252F', 'https://', drupal_query_string_encode($options));
+  }
 
 $output = <<<EOT
 <object type="application/x-shockwave-flash" data="$url" width="17" height="17">';
