--- sites/all/modules/vote_up_down/vote_up_down.module	2010-03-07 13:14:38.125832431 +0300
+++ sites/all/modules/vote_up_down/vote_up_down.module	2010-03-07 13:16:51.041822765 +0300
@@ -282,13 +282,23 @@
       $style = variable_get('vote_up_down_widget_style_node', 0) == 1 ? '_alt' : '';
       if ($node_type && user_access('view up/down votes')) {
         if (variable_get('vote_up_down_reset_vote', 0) && ((user_access('use vote up')) || (user_access('use vote down')))) {
-          $token = drupal_get_token("vote_up_down/$type/$node->nid/0");
-          $links['vote_up_down_reset'] = array(
-            'title' => t('Reset vote'),
-            'href' => "vote_up_down/$type/$node->nid/0",
-            'attributes' => array('title' => t('Reset your vote.')),
-            'query' => drupal_get_destination() .'&token='. $token,
+          $tag = variable_get('vote_up_down_tag', 'vote');
+          $criteria = array(
+            'content_type' => $type,
+            'content_id' => $node->nid,
+            'uid' => _vote_up_down_get_uid(),
+            'tag' => $tag,
           );
+          $user_vote = votingapi_select_single_vote_value($criteria);
+          if ($user_vote) {
+            $token = drupal_get_token("vote_up_down/$type/$node->nid/0");
+            $links['vote_up_down_reset'] = array(
+              'title' => t('Reset vote'),
+              'href' => "vote_up_down/$type/$node->nid/0",
+              'attributes' => array('title' => t('Reset your vote.')),
+              'query' => drupal_get_destination() .'&token='. $token,
+            );
+          }
         }
         if ($teaser && variable_get('vote_up_down_link_node', 0) && variable_get('vote_up_down_link_node', 0) != 2 && $style != "_alt") {
           $links['vote_up_down_points'] = array(
@@ -306,13 +316,23 @@
       break;
     case 'comment':
       if (variable_get('vote_up_down_reset_vote', 0) && (user_access('use vote up') || user_access('use vote down')) && (variable_get('vote_up_down_widget_comment', 0) || variable_get('vote_up_down_link_comment', 0))) {
-        $token = drupal_get_token("vote_up_down/$type/$node->cid/0");
-        $links['vote_up_down_reset_c'] = array(
-          'title' => t('Reset vote'),
-          'href' => "vote_up_down/$type/$node->cid/0",
-          'attributes' => array('title' => t('Reset your vote.')),
-          'query' => drupal_get_destination() .'&token='. $token,
+        $tag = variable_get('vote_up_down_tag', 'vote');
+        $criteria = array(
+          'content_type' => $type,
+          'content_id' => $node->nid,
+          'uid' => _vote_up_down_get_uid(),
+          'tag' => $tag,
         );
+        $user_vote = votingapi_select_single_vote_value($criteria);
+        if ($user_vote) {
+          $token = drupal_get_token("vote_up_down/$type/$node->cid/0");
+          $links['vote_up_down_reset_c'] = array(
+            'title' => t('Reset vote'),
+            'href' => "vote_up_down/$type/$node->cid/0",
+            'attributes' => array('title' => t('Reset your vote.')),
+            'query' => drupal_get_destination() .'&token='. $token,
+          );
+        }
       }
       if (variable_get('vote_up_down_link_comment', 0) && user_access('view up/down votes')) {
         $links['vote_up_down_points_c'] = array(
