summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllen Winter <allen.winter@kdab.com>2022-01-16 11:06:22 -0500
committerAllen Winter <allen.winter@kdab.com>2022-01-16 11:06:22 -0500
commit9222bbc947c12dd5326cdfcaa8706a112e315822 (patch)
treeddb5456edfc5371f2273a5675b1424052719280b
parent905cbb44d02c8e8f922099432cc6b6a1beeddd88 (diff)
downloadlibical-git-9222bbc947c12dd5326cdfcaa8706a112e315822.tar.gz
config.h.cmake, icalbdbset.c - fix compile with BDB on Windows
now that we can find BerkeleyDB on Windows we ran into a couple of compile errors.
-rw-r--r--config.h.cmake2
-rw-r--r--src/libicalss/icalbdbset.c4
2 files changed, 6 insertions, 0 deletions
diff --git a/config.h.cmake b/config.h.cmake
index b7e1d5c9..43767758 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -211,8 +211,10 @@ typedef unsigned long size_t;
/* Typedef ssize_t if needed */
#cmakedefine HAVE_SIZEOF_SSIZE_T
#if !defined(HAVE_SIZEOF_SSIZE_T)
+#if !defined(HAVE_BDB) && !defined(_WIN32)
typedef long ssize_t;
#endif
+#endif
/* Typedef pid_t if needed */
#cmakedefine HAVE_SIZEOF_PID_T 1
diff --git a/src/libicalss/icalbdbset.c b/src/libicalss/icalbdbset.c
index 81c6e21f..1ce28980 100644
--- a/src/libicalss/icalbdbset.c
+++ b/src/libicalss/icalbdbset.c
@@ -83,7 +83,11 @@ int icalbdbset_init_dbenv(char *db_env_dir,
flags = (u_int32_t) (DB_INIT_LOCK | DB_INIT_TXN | DB_CREATE | DB_THREAD |
DB_RECOVER | DB_INIT_LOG | DB_INIT_MPOOL);
+#if defined(_WIN32) //krazy2:exclude=cpp
+ ret = ICAL_DB_ENV->open(ICAL_DB_ENV, db_env_dir, flags, 0 /*ignored on Windows*/);
+#else
ret = ICAL_DB_ENV->open(ICAL_DB_ENV, db_env_dir, flags, S_IRUSR | S_IWUSR);
+#endif
if (ret) {
/*char *foo = db_strerror(ret); */