annotate lib-src/leditcfns.c @ 3024:b7f26b2f78bd

[xemacs-hg @ 2005-10-25 08:32:40 by ben] more mc-alloc-related factoring; make it hard to do the wrong thing postgresql/postgresql.c, postgresql/postgresql.h: MC-Alloc refactoring. ldap/eldap.c, ldap/eldap.h: MC-Alloc refactoring. alloc.c, buffer.c, console.c, emacs.c, file-coding.c, lrecord.h, lstream.c, mule-charset.c, print.c, scrollbar-gtk.c, scrollbar-msw.c, scrollbar-x.c, scrollbar.c, symbols.c, symeval.h, unicode.c, window.c, xemacs.def.in.in: rename `struct lcrecord_header' to `struct old_lcrecord_header'; likewise for `old_basic_alloc_lcrecord', `old_free_lcrecord', `old_zero_lcrecord', `old_zero_sized_lcrecord', `old_copy_lcrecord', `old_copy_sized_lcrecord', `old_alloc_lcrecord_type'. Created new LISPOBJ_STORAGE_SIZE() used only on objects created through allocation of Lisp-Object memory instead of basic xmalloc()/xfree(). This is distinguished from malloced_storage_size(), for non-Lisp-Objects. The definition of LISPOBJ_STORAGE_SIZE() can reduce down to malloced_storage_size() when not MC-ALLOC, but with MC-ALLOC it's a different function. The whole point other than cleaning up the use of LISPOBJ_STORAGE_SIZE is to make it harder to accidentally use the old kind (lowercase) of function in new code, since you get a compile error.
author ben
date Tue, 25 Oct 2005 08:32:50 +0000
parents 376386a54a3c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 /* Synched up with: FSF 19.28. */
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 #include <sgtty.h>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 #include <signal.h>
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 #define STRLEN 100
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 static char str[STRLEN+1] = "%?emacs"; /* extra char for the null */
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 switch_to_proc(){
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 char *ptr = str;
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10 while (*ptr) ioctl(0, TIOCSTI, ptr++);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 ioctl(0, TIOCSTI, "\n");
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 kill(getpid(), SIGTSTP);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 }
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 set_proc_str(ptr) char *ptr; {
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 if (strlen(ptr) <= STRLEN)
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 strcpy(str, ptr);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 else
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 printf("string too long for set-proc-str: %s\n", ptr);
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 }