On OS/2 kLIBC, fdopen() creates a stream in a mode of a file
descriptor. So specify "t" to open a stream in a text mode explicitly
on OS/2.
* src/builtin.c (m4_esyscmd): fdopen() in a text mode on OS/2.
---
src/builtin.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/builtin.c b/src/builtin.c
index e101838..7a73b36 100644
--- a/src/builtin.c
+++ b/src/builtin.c
@@ -1019,7 +1019,12 @@ m4_esyscmd (struct obstack *obs, int argc, token_data
**argv)
sysval = 127;
return;
}
- pin = fdopen (fd, "r");
+#if OS2
+# define MODE_TEXT "t"
+#else
+# define MODE_TEXT ""
+#endif
+ pin = fdopen (fd, "r" MODE_TEXT);
if (pin == NULL)
{
M4ERROR ((warning_status, errno, "cannot run command `%s'", cmd));
--
1.8.5.2
_______________________________________________
M4-patches mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/m4-patches