* [TUHS] OT: Need help from a *BSD guru @ 2018-01-22 8:10 arnold 2018-01-22 14:36 ` arnold 0 siblings, 1 reply; 5+ messages in thread From: arnold @ 2018-01-22 8:10 UTC (permalink / raw) Hi. Can a modern BSD guru please contact me off-list? I have a set of related tests in the gawk test suite that consistently fail on just about every *BSD system. It has me stumped, and I'd like to see these tests working if possible. (They've been not working for quite a while. That I get no complaints from BSD users tells me that gawk isn't popular in that world, but that's another story. :-) Thanks, Arnold ^ permalink raw reply [flat|nested] 5+ messages in thread
* [TUHS] OT: Need help from a *BSD guru 2018-01-22 8:10 [TUHS] OT: Need help from a *BSD guru arnold @ 2018-01-22 14:36 ` arnold 2018-01-22 18:03 ` Ian Zimmerman 2018-01-22 19:36 ` arnold 0 siblings, 2 replies; 5+ messages in thread From: arnold @ 2018-01-22 14:36 UTC (permalink / raw) Hi All. Looks like I solved my problem on my own; thanks to everyone who replied privately. I will send a short note detailing the issue a little later. Thanks! Arnold arnold at skeeve.com wrote: > Hi. > > Can a modern BSD guru please contact me off-list? I have a set of related > tests in the gawk test suite that consistently fail on just about every > *BSD system. It has me stumped, and I'd like to see these tests working > if possible. > > (They've been not working for quite a while. That I get no complaints > from BSD users tells me that gawk isn't popular in that world, but that's > another story. :-) > > Thanks, > > Arnold ^ permalink raw reply [flat|nested] 5+ messages in thread
* [TUHS] OT: Need help from a *BSD guru 2018-01-22 14:36 ` arnold @ 2018-01-22 18:03 ` Ian Zimmerman 2018-01-22 19:07 ` arnold 2018-01-22 19:36 ` arnold 1 sibling, 1 reply; 5+ messages in thread From: Ian Zimmerman @ 2018-01-22 18:03 UTC (permalink / raw) On 2018-01-22 07:36, arnold at skeeve.com wrote: > Looks like I solved my problem on my own; thanks to everyone who > replied privately. I will send a short note detailing the issue > a little later. Probably an unnecessary reminder, but could you post about it (the problem and the solution) to the Usenet newsgroup comp.lang.awk as well? Thanks. -- Please don't Cc: me privately on mailing lists and Usenet, if you also post the followup to the list or newsgroup. To reply privately _only_ on Usenet, fetch the TXT record for the domain. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [TUHS] OT: Need help from a *BSD guru 2018-01-22 18:03 ` Ian Zimmerman @ 2018-01-22 19:07 ` arnold 0 siblings, 0 replies; 5+ messages in thread From: arnold @ 2018-01-22 19:07 UTC (permalink / raw) Ian Zimmerman <itz at very.loosely.org> wrote: > On 2018-01-22 07:36, arnold at skeeve.com wrote: > > > Looks like I solved my problem on my own; thanks to everyone who > > replied privately. I will send a short note detailing the issue > > a little later. > > Probably an unnecessary reminder, but could you post about it (the > problem and the solution) to the Usenet newsgroup comp.lang.awk as well? > Thanks. It's totally a C issue; it merely came up in the context of gawk. And I unsubscribed from comp.lang.awk a year or so ago. My blood pressure has been considerably lower since doing so. :-) Thanks, Arnold ^ permalink raw reply [flat|nested] 5+ messages in thread
* [TUHS] OT: Need help from a *BSD guru 2018-01-22 14:36 ` arnold 2018-01-22 18:03 ` Ian Zimmerman @ 2018-01-22 19:36 ` arnold 1 sibling, 0 replies; 5+ messages in thread From: arnold @ 2018-01-22 19:36 UTC (permalink / raw) The problem had to do with the "inplace" extension for gawk that enables in-place editing of files, ala perl or GNU sed -i. On BSD systems, I was getting failures from the test suite. E.g., on a regular system, inplace1.ok looks like: ----------------------- before gawk: inplace:47: warning: inplace_begin: disabling in-place editing for invalid FILENAME `-' stdin start is bar replaced? stdin end after ----------------------- On a BSD system, I get: ----------------------- before gawk: inplace:47: warning: inplace_begiafter abling in-place editing for invalid FILENAME `-' stdin start is bar replaced? stdin end ----------------------- There's some kind of buffering problem going on. The problem only occurs when stdout and stderr are redirected to the same file: command line here > _out 2>&1 I tried adding all kinds of calls to fflush in all kinds of places, but no luck. Finally, I had an "aha!" moment (an epiphany, if I'm using the expensive word correctly :-), and made this change: diff --git a/main.c b/main.c index 55983789..f505c71f 100644 --- a/main.c +++ b/main.c @@ -246,6 +246,10 @@ main(int argc, char **argv) if ((cp = getenv("GAWK_LOCALE_DIR")) != NULL) locale_dir = cp; + int flags = fcntl(fileno(stderr), F_GETFL, NULL); + flags |= O_APPEND; + (void) fcntl(fileno(stderr), F_SETFL, flags); + #if defined(LOCALEDEBUG) initial_locale = locale; #endif Forching stderr to be in append mode did the trick. WHY does that make it work? Beats me. It's not needed on any other system. Adventures In C Programming ... Thanks, Arnold arnold at skeeve.com wrote: > Hi All. > > Looks like I solved my problem on my own; thanks to everyone who > replied privately. I will send a short note detailing the issue > a little later. > > Thanks! > > Arnold ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-01-22 19:36 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-01-22 8:10 [TUHS] OT: Need help from a *BSD guru arnold 2018-01-22 14:36 ` arnold 2018-01-22 18:03 ` Ian Zimmerman 2018-01-22 19:07 ` arnold 2018-01-22 19:36 ` arnold
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).