commit 6a7b3a59a7bc9635c4386b9bea88ce2cf05493e0
Author: Kirill Astashov <kirill.astashov@netspot.com.au>
Date:   Fri Mar 30 18:16:39 2012 +1030

    MQ-285: Fix Recent Files in file picker failing on wiki or forum attachments

diff --git a/lib/filebrowser/file_info_context_module.php b/lib/filebrowser/file_info_context_module.php
index a8149c6..3a90904 100644
--- a/lib/filebrowser/file_info_context_module.php
+++ b/lib/filebrowser/file_info_context_module.php
@@ -75,6 +75,8 @@ class file_info_context_module extends file_info {
      * @param $filename
      */
     public function get_file_info($component, $filearea, $itemid, $filepath, $filename) {
+        global $CFG;
+
         // try to emulate require_login() tests here
         if (!isloggedin()) {
             return null;
@@ -116,6 +118,17 @@ class file_info_context_module extends file_info {
             return $functionname_old($this->browser, $this->areas, $this->course, $this->cm, $this->context, $filearea, $itemid, $filepath, $filename);
         }
 
+        // Module doesn't have any get_file_info method, let's do something generic...  -- Kirill Astashov
+        $fs = get_file_storage();
+        $urlbase = $CFG->wwwroot .'/pluginfile.php';
+        $topvisiblename = "";
+        if (!$storedfile = $fs->get_file($this->context->id, 'mod_'.$this->modname, $filearea, $itemid, $filepath, $filename)) {
+            return null;
+        } else {
+            return new file_info_stored($this->browser, $this->context, $storedfile, $urlbase, $topvisiblename, true, true, false, false);
+        }
+
+        // this point should not be reached ever, but just in case -- Kirill Astashov
         return null;
     }
 
