diff options
| author | Kim F. Storm | 2004-06-22 13:57:00 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2004-06-22 13:57:00 +0000 |
| commit | 7b4cd44a019f6dc8f6da54e23a1fbfb2354c721b (patch) | |
| tree | 5f24c10af45e60e08c3cf1670f8beab3c3e37a1c | |
| parent | b766f87064147ba0feaa62de26ed8d1ed46ad96a (diff) | |
| download | emacs-7b4cd44a019f6dc8f6da54e23a1fbfb2354c721b.tar.gz emacs-7b4cd44a019f6dc8f6da54e23a1fbfb2354c721b.zip | |
(Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
SAFE_FREE_LISP macros.
| -rw-r--r-- | src/fns.c | 12 |
1 files changed, 4 insertions, 8 deletions
| @@ -3000,7 +3000,6 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string. */) | |||
| 3000 | register Lisp_Object *args; | 3000 | register Lisp_Object *args; |
| 3001 | register int i; | 3001 | register int i; |
| 3002 | struct gcpro gcpro1; | 3002 | struct gcpro gcpro1; |
| 3003 | int nbytes; | ||
| 3004 | Lisp_Object ret; | 3003 | Lisp_Object ret; |
| 3005 | USE_SAFE_ALLOCA; | 3004 | USE_SAFE_ALLOCA; |
| 3006 | 3005 | ||
| @@ -3009,8 +3008,7 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string. */) | |||
| 3009 | nargs = leni + leni - 1; | 3008 | nargs = leni + leni - 1; |
| 3010 | if (nargs < 0) return build_string (""); | 3009 | if (nargs < 0) return build_string (""); |
| 3011 | 3010 | ||
| 3012 | nbytes = nargs * sizeof (Lisp_Object); | 3011 | SAFE_ALLOCA_LISP (args, nargs); |
| 3013 | SAFE_ALLOCA_LISP (args, nbytes); | ||
| 3014 | 3012 | ||
| 3015 | GCPRO1 (separator); | 3013 | GCPRO1 (separator); |
| 3016 | mapcar1 (leni, args, function, sequence); | 3014 | mapcar1 (leni, args, function, sequence); |
| @@ -3023,7 +3021,7 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string. */) | |||
| 3023 | args[i] = separator; | 3021 | args[i] = separator; |
| 3024 | 3022 | ||
| 3025 | ret = Fconcat (nargs, args); | 3023 | ret = Fconcat (nargs, args); |
| 3026 | SAFE_FREE (nbytes); | 3024 | SAFE_FREE_LISP (nargs); |
| 3027 | 3025 | ||
| 3028 | return ret; | 3026 | return ret; |
| 3029 | } | 3027 | } |
| @@ -3038,20 +3036,18 @@ SEQUENCE may be a list, a vector, a bool-vector, or a string. */) | |||
| 3038 | register Lisp_Object len; | 3036 | register Lisp_Object len; |
| 3039 | register int leni; | 3037 | register int leni; |
| 3040 | register Lisp_Object *args; | 3038 | register Lisp_Object *args; |
| 3041 | int nbytes; | ||
| 3042 | Lisp_Object ret; | 3039 | Lisp_Object ret; |
| 3043 | USE_SAFE_ALLOCA; | 3040 | USE_SAFE_ALLOCA; |
| 3044 | 3041 | ||
| 3045 | len = Flength (sequence); | 3042 | len = Flength (sequence); |
| 3046 | leni = XFASTINT (len); | 3043 | leni = XFASTINT (len); |
| 3047 | 3044 | ||
| 3048 | nbytes = leni * sizeof (Lisp_Object); | 3045 | SAFE_ALLOCA_LISP (args, leni); |
| 3049 | SAFE_ALLOCA_LISP (args, nbytes); | ||
| 3050 | 3046 | ||
| 3051 | mapcar1 (leni, args, function, sequence); | 3047 | mapcar1 (leni, args, function, sequence); |
| 3052 | 3048 | ||
| 3053 | ret = Flist (leni, args); | 3049 | ret = Flist (leni, args); |
| 3054 | SAFE_FREE(nbytes); | 3050 | SAFE_FREE_LISP (leni); |
| 3055 | 3051 | ||
| 3056 | return ret; | 3052 | return ret; |
| 3057 | } | 3053 | } |