diff --git a/gcal_events.module b/gcal_events.module
index 6d8087b..1339649 100755
--- a/gcal_events.module
+++ b/gcal_events.module
@@ -761,6 +761,7 @@ function gcal_events_get_events($which_block) {
  
       $gcal_date = date($dateformat, $unixdate);
  
+      $item_link = urldecode($item->get_link());
       if (strlen(trim($item->get_title()))>1 && $status != "canceled" && strlen(trim($date)) > 0) {
             $events[] = array(
               'timestamp' => $unixdate,
@@ -771,7 +772,7 @@ function gcal_events_get_events($which_block) {
               'where' => $location,
               'title' => $item->get_title(),
               'description' => $item->get_description(),
-              'link' => $item->get_link(),
+              'link' => $item_link,
               'today' => date("Y-m-d") == date("Y-m-d", $unixdate),
               'tomorrow' => (date("Y-m-d",strtotime("+1 day")) == date("Y-m-d", $unixdate)),
               'thisweek' => (date("Y-W") == date("Y-W", $unixdate)),
@@ -785,7 +786,7 @@ function gcal_events_get_events($which_block) {
         gcal_events_debug_block_2($admin_name, "Timestamp: ". $unixdate ." (". date("Y-m-d", $unixdate) .")");
         gcal_events_debug_block_2($admin_name, "Location: ". $location);
         gcal_events_debug_block_2($admin_name, "Desc: ". $item->get_description());
-        gcal_events_debug_block_2($admin_name, "Link: <a href=\"". $item->get_link() . "\">URL</A>");       
+        gcal_events_debug_block_2($admin_name, "Link: <a href=\"". $item_link . "\">URL</A>");       
       }
     }
     gcal_events_debug("PHP Memory Usage: ". round(memory_get_usage(FALSE)/1024/1024, 1 ) ."MB");
