]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
add some transaction voodoo to the insert for rememberme cookies
authorEvan Prodromou <evan@prodromou.name>
Tue, 9 Dec 2008 18:54:24 +0000 (13:54 -0500)
committerEvan Prodromou <evan@prodromou.name>
Tue, 9 Dec 2008 18:54:24 +0000 (13:54 -0500)
darcs-hash:20081209185424-84dde-d439346477811043ae471c5e68644b326b016713.gz

lib/util.php

index 87a6a42c5680a110e0071fb6cb38006e4c7ebada..5fec73552f643be54389ee438b079547125fd920 100644 (file)
@@ -614,8 +614,14 @@ function common_rememberme($user=NULL) {
        }
 
        $rm = new Remember_me();
+
        $rm->code = common_good_rand(16);
        $rm->user_id = $user->id;
+
+    # Wrap the insert in some good ol' fashioned transaction code
+
+    $rm->query('BEGIN');
+
        $result = $rm->insert();
 
        if (!$result) {
@@ -624,6 +630,8 @@ function common_rememberme($user=NULL) {
                return false;
     }
 
+    $rm->query('COMMIT');
+
        common_debug('Inserted rememberme record (' . $rm->code . ', ' . $rm->user_id . '); result = ' . $result . '.', __FILE__);
 
     $cookieval = $rm->user_id . ':' . $rm->code;