summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--ext/mysqlnd/mysqlnd_portability.h25
2 files changed, 21 insertions, 6 deletions
diff --git a/NEWS b/NEWS
index 85fcedaa72..1ca2ebaa7f 100644
--- a/NEWS
+++ b/NEWS
@@ -126,6 +126,8 @@ PHP NEWS
file). (Greg)
- Fixed bug #48247 (Infinite loop and possible crash during startup with
errors when errors are logged). (Jani)
+- Fixed bug #48198 error: 'MYSQLND_LLU_SPEC' undeclared. Cause for #48780 and
+ #46952 - both fixed too. (Andrey)
- Fixed bug #48189 (ibase_execute error in return param). (Kalle)
- Fixed bug #48182 (ssl handshake fails during asynchronous socket connection).
(Sriram Natarajan)
diff --git a/ext/mysqlnd/mysqlnd_portability.h b/ext/mysqlnd/mysqlnd_portability.h
index 9dba7fa515..159500fb6a 100644
--- a/ext/mysqlnd/mysqlnd_portability.h
+++ b/ext/mysqlnd/mysqlnd_portability.h
@@ -174,11 +174,16 @@ typedef unsigned long long uint64_t;
#define MYSQLND_LLU_SPEC "%lu"
#endif
-#if __powerpc64__
+#if __powerpc64__ || __ppc64__
#define MYSQLND_LL_SPEC "%li"
#define MYSQLND_LLU_SPEC "%lu"
#endif
+#if (__powerpc__ || __ppc__ ) && !(__powerpc64__ || __ppc64__)
+#define MYSQLND_LL_SPEC "%lli"
+#define MYSQLND_LLU_SPEC "%llu"
+#endif
+
#if __x86_64__
#define MYSQLND_LL_SPEC "%li"
#define MYSQLND_LLU_SPEC "%lu"
@@ -189,11 +194,6 @@ typedef unsigned long long uint64_t;
#define MYSQLND_LLU_SPEC "%lu"
#endif
-#if __powerpc__ && !__powerpc64__
-#define MYSQLND_LL_SPEC "%lli"
-#define MYSQLND_LLU_SPEC "%llu"
-#endif
-
#if __s390__ && !__s390x__
#define MYSQLND_LL_SPEC "%lli"
#define MYSQLND_LLU_SPEC "%llu"
@@ -204,6 +204,19 @@ typedef unsigned long long uint64_t;
#define MYSQLND_LLU_SPEC "%llu"
#endif
+#ifndef MYSQLND_LL_SPEC
+#if SIZEOF_LONG == 8
+#define MYSQLND_LL_SPEC "%li"
+#endif
+#endif
+
+#ifndef MYSQLND_LLU_SPEC
+#if SIZEOF_LONG == 8
+#define MYSQLND_LLU_SPEC "%li"
+#endif
+#endif
+
+
#define MYSQLND_SZ_T_SPEC "%zd"
#ifndef L64
#define L64(x) x##LL