diff --git a/flag_limiter.module b/flag_limiter.module
index 7078344..4d50943 100644
--- a/flag_limiter.module
+++ b/flag_limiter.module
@@ -100,17 +100,19 @@ function flag_limiter_preprocess_flag(&$variables) {
     if ($flag_limit) {
       $user_flags = flag_limiter_get_user_flags($variables['user']->uid, $flag->fid);
       if (count($user_flags) >= $flag_limit && $variables['status'] == 'unflagged') {
-        unset($variables['link_href']);
+        $variables['link_href'] = '';
         $variables['link_text'] = $flag->unflag_denied_text;
       }
     }
 
     if ($peritem_limit) {
       $limit = flag_get_counts($flag->entity_type, $variables['entity_id'], TRUE);
-      $name = $flag->name;
-      if ($limit[$name] >= $peritem_limit && user_access('unflag ' . $flag->name) == FALSE) {
-        unset($variables['link_href']);
-        $variables['link_text'] = $flag->unflag_denied_text;
+      if ($limit) {
+        $name = $flag->name;
+        if ($limit[$name] >= $peritem_limit && user_access('unflag ' . $flag->name) == FALSE) {
+          $variables['link_href'] = '';
+          $variables['link_text'] = $flag->unflag_denied_text;
+        }
       }
     }
   }
