comparison src/alloc.c @ 1114:903883eed4de

* alloc.c (mark_object): mark a symbol's name after marking its value, function, and property list rather than before; this way, symbols' names are readable, giving us a chance to detect some kinds of heap corruption.
author Jim Blandy <jimb@redhat.com>
date Sun, 13 Sep 1992 12:14:54 +0000
parents 67bfadf24043
children 2b07af77d7ec
comparison
equal deleted inserted replaced
1113:0ffcf74fb8ad 1114:903883eed4de
1376 register struct Lisp_Symbol *ptr = XSYMBOL (obj); 1376 register struct Lisp_Symbol *ptr = XSYMBOL (obj);
1377 struct Lisp_Symbol *ptrx; 1377 struct Lisp_Symbol *ptrx;
1378 1378
1379 if (XMARKBIT (ptr->plist)) break; 1379 if (XMARKBIT (ptr->plist)) break;
1380 XMARK (ptr->plist); 1380 XMARK (ptr->plist);
1381 XSETTYPE (*(Lisp_Object *) &ptr->name, Lisp_String);
1382 mark_object (&ptr->name);
1383 mark_object ((Lisp_Object *) &ptr->value); 1381 mark_object ((Lisp_Object *) &ptr->value);
1384 mark_object (&ptr->function); 1382 mark_object (&ptr->function);
1385 mark_object (&ptr->plist); 1383 mark_object (&ptr->plist);
1384 XSETTYPE (*(Lisp_Object *) &ptr->name, Lisp_String);
1385 mark_object (&ptr->name);
1386 ptr = ptr->next; 1386 ptr = ptr->next;
1387 if (ptr) 1387 if (ptr)
1388 { 1388 {
1389 ptrx = ptr; /* Use pf ptrx avoids compiler bug on Sun */ 1389 ptrx = ptr; /* Use pf ptrx avoids compiler bug on Sun */
1390 XSETSYMBOL (obj, ptrx); 1390 XSETSYMBOL (obj, ptrx);