null+****@clear*****
null+****@clear*****
2012年 3月 22日 (木) 01:40:04 JST
Kouhei Sutou 2012-03-22 01:40:04 +0900 (Thu, 22 Mar 2012)
New Revision: 461aff832487d0c8ca0665820adf7412c03f38ca
Log:
solaris: mode for open() should be specified for O_CREAT
Reported by Kazuhiko Shiozaki. Thanks!!!
Modified files:
lib/groonga_in.h
lib/ii.c
Modified: lib/groonga_in.h (+2 -2)
===================================================================
--- lib/groonga_in.h 2012-03-22 00:01:33 +0900 (1d6f824)
+++ lib/groonga_in.h 2012-03-22 01:40:04 +0900 (4d03bb1)
@@ -437,8 +437,8 @@ typedef int grn_cond;
# ifdef HAVE_MKOSTEMP
# define GRN_MKOSTEMP mkostemp
# else /* HAVE_MKOSTEMP */
-# define GRN_MKOSTEMP(template,flags) \
- (mktemp(template), GRN_OPEN((template),flags))
+# define GRN_MKOSTEMP(template,flags,mode) \
+ (mktemp(template), GRN_OPEN((template),flags,mode))
# endif /* HAVE_MKOSTEMP */
#elif (defined(WIN32) || defined (_WIN64)) /* __GNUC__ */
Modified: lib/ii.c (+2 -1)
===================================================================
--- lib/ii.c 2012-03-22 00:01:33 +0900 (bd73915)
+++ lib/ii.c 2012-03-22 01:40:04 +0900 (48fc711)
@@ -7099,7 +7099,8 @@ grn_ii_buffer_open(grn_ctx *ctx, grn_ii *ii,
"%sXXXXXX", grn_io_path(ii->seg));
ii_buffer->block_buf_size = II_BUFFER_BLOCK_SIZE;
ii_buffer->tmpfd = GRN_MKOSTEMP(ii_buffer->tmpfpath,
- O_WRONLY|O_CREAT|O_TRUNC);
+ O_WRONLY|O_CREAT|O_TRUNC,
+ S_IRUSR|S_IWUSR);
if (ii_buffer->tmpfd != -1) {
grn_obj_flags flags;
grn_table_get_info(ctx, ii->lexicon, &flags, NULL, NULL);