? media_uri_to_object.patch
? remove_unused_styles_function_in_filter.patch
Index: media.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/media/media.module,v
retrieving revision 1.63
diff -u -p -r1.63 media.module
--- media.module	5 Jan 2011 22:07:07 -0000	1.63
+++ media.module	11 Jan 2011 18:26:02 -0000
@@ -862,6 +862,31 @@ function media_parse_to_file($url) {
 }
 
 /**
+ * Load a media object from a given URI.
+ *
+ * This will load a media object given a unique URI, or, if there is no
+ * corresponding database entry, create a new media object (without saving).
+ *
+ * @param string $uri
+ *   A unique URI.
+ *
+ * @return
+ *   The corresponding media object.
+ */
+function media_uri_to_object($uri) {
+  $query = new EntityFieldQuery();
+  $result = $query->entityCondition('entity_type', 'media')
+    ->propertyCondition('uri', array($uri))
+    ->execute();
+  if (isset($result['media'])) {
+    return array_pop(entity_load('media', array_keys($result['media'])));
+  }
+
+  // Build a fake media object.
+  return file_uri_to_object($uri);
+}
+
+/**
  *  When we save a file, we need to ensure any required media entity info is
  *  saved as well.
  */
