Index: logintoboggan.js
===================================================================
--- logintoboggan.js	(revision 159)
+++ logintoboggan.js	(working copy)
@@ -6,6 +6,14 @@
       Drupal.logintoboggan_toggleboggan();
     }
   );
+  $("#user-login:not(.toboggan-anchor-processed)", context).each(
+    function() {
+      $(this).addClass('toboggan-anchor-processed');
+      if (window.location.hash) {
+        $('#edit-lt-anchor', this).val(window.location.hash);
+      }
+    }
+  );
 };
 
 Drupal.logintoboggan_toggleboggan = function() {
Index: logintoboggan.module
===================================================================
--- logintoboggan.module	(revision 159)
+++ logintoboggan.module	(working copy)
@@ -160,6 +160,8 @@
 
     case 'user_login':
     case 'user_login_block':
+      drupal_add_js(drupal_get_path('module', 'logintoboggan') .'/logintoboggan.js');
+      
       // Grab the message from settings for display at the top of the login block.
       if ($login_msg = variable_get('logintoboggan_login_block_message', '')) {
         $form['message'] = array(
@@ -182,6 +184,11 @@
       }
       if(isset($GLOBALS['logintoboggan_denied']) && $GLOBALS['logintoboggan_denied'] == TRUE) {
         logintoboggan_destination();
+        $form['#validate'] = array('logintoboggan_anchor_validate') + $form['#validate'];
+        $form['lt_anchor'] = array(
+          '#type' => 'hidden',
+          '#value' => !empty($form_state['post']['lt_anchor']) ? $form_state['post']['lt_anchor'] : '',
+        );
       }
 
       if (($form_id == 'user_login_block')) {
@@ -364,6 +371,16 @@
   }
 }
 
+function logintoboggan_anchor_validate($form, &$form_state) {
+  if (!empty($form_state['values']['lt_anchor'])) {
+    if ($redirect = $_REQUEST['destination']) {
+      if (parse_url($redirect, PHP_URL_FRAGMENT) == '') {
+        $_REQUEST['destination'] .= $form_state['values']['lt_anchor'];
+      }
+    }
+  }
+}
+
 /**
  * Custom validation function for user registration form
  *
@@ -571,9 +588,6 @@
  */
 
 function _logintoboggan_toggleboggan ($form) {
-
-  drupal_add_js(drupal_get_path('module', 'logintoboggan') .'/logintoboggan.js');
-
   $pre = '<div id="toboggan-container" class="toboggan-container">';
   $options = array(
     'attributes' => array(
