From 95e645246e5ca5437e6dac3e5173cb0efde55a25 Mon Sep 17 00:00:00 2001 From: Greg Taylor Date: Thu, 4 Jan 2007 01:36:22 +0000 Subject: [PATCH] Fixed some issues with @dest'ing player objects that don't have a matching account (should never really happen but just in case.) --- evennia/trunk/apps/objects/models.py | 14 +++++++++----- evennia/trunk/evennia.sql | Bin 57344 -> 62464 bytes evennia/trunk/functions_general.py | 7 +++++++ evennia/trunk/prepenv.sh | 3 ++- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/evennia/trunk/apps/objects/models.py b/evennia/trunk/apps/objects/models.py index 3ede270ae4..08387754ac 100755 --- a/evennia/trunk/apps/objects/models.py +++ b/evennia/trunk/apps/objects/models.py @@ -270,7 +270,7 @@ class Object(models.Model): """ Clears all of an object's attributes. """ - self.get_all_attributes() + attribs = self.get_all_attributes() for attrib in attribs: self.delete() @@ -289,10 +289,13 @@ class Object(models.Model): # If the object is a player, set the player account object to inactive. # It can still be recovered at this point. if self.is_player(): - uobj = User.objects.get(id=self.id) - uobj.is_active = False - uobj.save() - + try: + uobj = User.objects.get(id=self.id) + uobj.is_active = False + uobj.save() + except: + functions_general.print_errmsg('Destroying object %s but no matching player.' % (self,)) + # Set the object type to GOING self.type = 5 self.save() @@ -600,4 +603,5 @@ class Object(models.Model): return global_defines.OBJECT_TYPES[otype][1][0] import functions_db +import functions_general import session_mgr diff --git a/evennia/trunk/evennia.sql b/evennia/trunk/evennia.sql index 63a84031cc560356f7b1ea24cf1b7de42db91011..447a92386a6bc560810e0273646cc25e7d0b1b89 100755 GIT binary patch delta 4015 zcmcK7Yiv{39RToq&fh+Xo1^Y~xq?2B;r3Ov#nxT-9BEp`17$V=s*@B2{taYbW?Vv{*K zKIMexQZr6^A>4W}QGm`VaGL&;&XFri#Y?0B z4=4{Q4S_&s-skuA_b)j41@~{Odx)gxj_0S6T6;$2s?}~rx$RhbO65sC%hgOOmEtzn zoOIOGG8wLEhQ+fwx45cC`&6w@)x(+{SH-UxF?3T?&Cg!(-MCbm3w^#IK4+~6Mj&JQ zVyGHJ^ZWh%`uHtF%UW4OZOu2y;Eo4H0ZcnzL}W6(q2rH|7b4UnIa!(^RO3K}mLv>w0G zPe^SG2`r0>t8v|kn`VS_TT?Y!W&LM9;jV63CD=kbKUGDIn^we*s;bUu6<6Iby4tw9 zr<)E;C1;O1nef7yc_*^J>qZ0n3OBdF?YN;u-1@fhUs~uD%PF5eF+IO9JvSRp&St{d zT=Hl>GTw;|H;_Zi+7+`ehKie!n3xvRq@daEB+8f$yFuko&O0Yg=A9Ga{6cc!WL~zI zOXe5Cxw)g$vynp`H=3RMRI_H>)FLrmw>15xW@W1j$!xat`(LyddNDxyVsMUPkQ5FRf}^gZmN-}Ve5uPtF+iu@@Q9^7F#yDw;q-9yHcC)aJIDaZ<^wuB)79^o(VxDz9*FN?Tf1PuX^w8_}e#C#_i8QB@~pnT};A zwT$1r$=#C3^zd6Ud%G_EaT$`o`;?%6d4bz_-L?oGVv9`X%ssKq2*|^WV-xJzOkR zTxj=Rglq6YIq1pVxcKCE(oOYHBJd}8MO=FZeg)4%8GZy$!v}ByO67GI^X|QV(a?qO z<$U$<7=b^-W97;x&H)42L;1T;H`NfO{KAq-2`l}rygFP%o>OR;?xhdXAJEt62Vw{Z zU`9lCiCiO>$a71@BjgCVrbHSP#qU@A%KDaOcS8>B9vRs&Fur5ESoRj?K)1N@UiEl; zeL!*VCIKZ7XlZs63;Seq=s7g`2}Y%Cw?PlPpcck@Lk# zUvZIm6JLh@(jO+mrHy-kSMrbktHUFUmM^1Qt)h}P`s;#qeJ|>E#NwtIGm6b#Z=yKV zf4kMSb8zfbVsw6dSRc!!^|6^0kDW+P?3*2!?LRY+OU!0?>`apHKQ?@7{#4@B{Nk?T zL+0-B{?n5)X>D@mn3^~~Je8Q)I(9s5=zD26gxH}3!vWgf32C!5-Knlg?3K{e5w&4FJ=FfyYbc>ipIyB;3JkTs#JR^&X zJ~<_~OC(}S9xCiG24)i{cMlF}2gfH*PmUkVRgTQ`pBkCjAqsN2#P+lpy#2zl>BQiu zF|s(h<)-1X{P_3bjxCu38JkG@b4qb{E_;*o4dt*FJ_45`y;g-+9X zdYYc457S5J1^NVihCWN5r!Uf%=&SS+y-csrtMo%qz$do_Evz>{DQ4TaFUI<&qXZD>GOu0&U@LRYUw z*Q`O;u0feG^-icP-g;sAx1O3;8$|2xK^un9mBZ+&o#^Ua=$Zt&b_8wQjW+E;n+v0OvTh7rzZVUU zqb>W;*8OPP1loQ8-7txE96~#fpj`*i?t9Um`_PT|qrHbwtuKiukrcWqjj9=xJE)#@ zleD9}QL5NHU7!c)7#*hDXqTen_4o zkCShbuaXDJA~`{3NQxXJV`P|YBXPn>4{0T9Nr+Sus(hrpr@W)QrMw|JlP~6Y6hcCr zWuz)g3kxK)iKS#gge9eY?1;3J9hUa8`=uM%A!!G@Puj!om3Fg((k?bB-M|h=+u4M) zjqR7VvVGDPHZBdby&k0?B3jSJWWhQ%Ds5(aq)lwMw2_TS*Rq6k4cjGM&2~yxv0>>- zHY9Ce_eks6ptO$NEe)|9(jeO|UBL!C1$Rhl*)~~F!}_HGwpCiq?vhrqJEfIui`36H zOMUDPX$6Z*8H-81%$9msR0_?C2|SS^RJJ VDumgztYxq%smYE?HI|j?{{~R&`T_s| delta 1328 zcmajeOKclO7y#g%`E9S)@j7v~X?`YyFElEmJ+xARLO~TsuI+6Clr(jD z3Dm@GR6wert3f3Q)DkKrDx@N71OjmZ^~51axkNz(38Vsn6x34=M5wIu(_T0*+JC;; z`8A_??9Ok%{8wG?LFDSCyUkS6B=9lNHf##^tvhyy5 zCnpb=E2mHUv8P^Ti!&!GQw2Tk=yusoyRJQ+E0{UgD%yI<)it|R)HP$mDdluG=ajWl zc|2!YuAyo6sBVlJmTH)J!^&$;Rsvh&KL z5na`tyyj0f!TwN^Jl?hn{AR0~hz04U04uNrPs0%1tX03GeA8|Tin2eYMGH*4HO)_L z{7Sq-5nlN73K1js5(hfJpi6XxenY>eHF}M{Lp}OBtxnp_xH+XaF7TM+Y)!-&`Ly(rL7}7fq$mWD-?X zw5JE{?nb-1&_n|5>_j^{(Drt;tqpB$MR)H;=UQ5@v1=EqC}?vt8jqt*O=x2y8jGQ_ zj7FnqLjxL#ppt}!!>A~tq0o*g8Vq7bAb7IVZXl8XKtn|Gs@u%{ z;ZBAI51xZb*KtZ#&Ml1>OUG=@H45XJmUCTg+&<B>=4v3U)Yoze zJRW=N40wk`=Dl431(uk&n1*fG@>f^^w)AeXLxDvCKf||v??-S0J_ioh;VNvwB3Iw5 z?2KK!@=Qp9%LIPm(f2Pv*x%}HAw+>+zM6=U6a34XMoEy};%(hBSre#AAEsyhA7zDZ zK?3%|Q~s%}k!`Y8tA0#cb;Uoc5x