null+****@clear*****
null+****@clear*****
2012年 5月 17日 (木) 22:52:56 JST
Kouhei Sutou 2012-05-17 22:52:56 +0900 (Thu, 17 May 2012)
New Revision: 2a9b01afa07b26af983ea43a6f0ef1d9874034c4
Log:
suggest: don't use access()
Modified files:
src/suggest/groonga_suggest_create_dataset.c
Modified: src/suggest/groonga_suggest_create_dataset.c (+8 -9)
===================================================================
--- src/suggest/groonga_suggest_create_dataset.c 2012-05-17 22:49:11 +0900 (31606c5)
+++ src/suggest/groonga_suggest_create_dataset.c 2012-05-17 22:52:56 +0900 (b8b88ba)
@@ -18,7 +18,6 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <unistd.h>
#include <groonga.h>
static void
@@ -94,16 +93,16 @@ main(int argc, char **argv)
ctx = &ctx_;
grn_ctx_init(ctx, 0);
- if (access(db_path, F_OK) == 0) {
- db = grn_db_open(ctx, db_path);
- if (!db) {
+ db = grn_db_open(ctx, db_path);
+ if (!db) {
+ if (ctx->rc == GRN_NO_SUCH_FILE_OR_DIRECTORY) {
+ db = grn_db_create(ctx, db_path, NULL);
+ if (!db) {
+ fprintf(stderr, "DB create failed (%s): %s\n", db_path, ctx->errbuf);
+ }
+ } else {
fprintf(stderr, "DB open failed (%s): %s\n", db_path, ctx->errbuf);
}
- } else {
- db = grn_db_create(ctx, db_path, NULL);
- if (!db) {
- fprintf(stderr, "DB create failed (%s): %s\n", db_path, ctx->errbuf);
- }
}
if (db) {