--- asd/apachesolr/apachesolr_search.module	2009-12-18 04:11:44.000000000 -0800
+++ apachesolr/apachesolr_search.module	2009-12-24 21:22:37.000000000 -0800
@@ -585,13 +585,14 @@
       foreach ($doc->getFieldNames() as $field_name) {
         $fields[$field_name] = $doc->getField($field_name);
       }
+      $base_path = substr($doc->url, 0, strlen($doc->url) - strlen($doc->path));
       $results[] = array(
-        'link' => url($doc->path),
+        'link' => $doc->url,
         'type' => apachesolr_search_get_type($doc->type),
         // template_preprocess_search_result() runs check_plain() on the title
         // again.  Decode to correct the display.
         'title' => htmlspecialchars_decode($doc->title, ENT_QUOTES),
-        'user' => theme('username', $doc),
+        'user' => $doc->uid ? l($doc->name, "$base_path"."user/$doc->uid") : theme('username', $doc),
         'date' => $doc->created,
         'node' => $doc,
         'extra' => $extra,
