[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freewnn:00829] malloc
- To: freewnn@tomo.gr.jp
- Subject: [freewnn:00829] malloc
- From: Hiroo Ono <hiroo@XXXX>
- Date: Sat, 30 Mar 2002 21:43:00 +0900
- Reply-To: freewnn@tomo.gr.jp
- User-Agent: Wanderlust/2.6.1 (Upside Down) SEMI/1.14.3 (Ushinoya)FLIM/1.14.3 (Unebigoryōmae) APEL/10.3 Emacs/21.1(i386--freebsd) MULE/5.0 (SAKAKI)
小野寛生です
Wnn/include/wnn_malloc.h, Wnn/jserver/malloc.c, Wnn/jserver/MALLOC.c
を破棄。
#if STDC_HEADERS
#include <stdlib.h>
#else
# if HAVE_MALLOC_H
# include <malloc.h>
# endif
#endif /* STDC_HEADERS */
を malloc/calloc/realloc/free を使っているファイルに追加。
という作業をしています。
なんで #define malloc malloc0 してたりするんだろうとか、malloc0 はどう
してこういうことをしているんだろうと思ったのですが、
size = (size + 7) & 0xfffffff8;
でサイズを正規化するためとか、NULL pointer を free しないとかなんでしょうか。
そうしないとまずい実装があるのでしょうか。
そのなかで、気になったコードがあるのですが、
Wnn/jutil/wddel.c で
rb.buf = (char *) malloc ((unsigned) (rb.size = 0));
という部分があります。その後で
js_dic_list (env, &rb)
の中で malloc しているので、問題ないのですが、単に
rb.buf = NULL;
にしていない理由がなにかあるんでしょうか?