On 09/18/2017 09:56 PM, Mike Looijmans wrote:
On 18-09-17 15:24, Mike Looijmans wrote:
On 18-09-17 15:08, Burton, Ross wrote:
On 18 September 2017 at 12:31, Mike Looijmans <mike.looijm...@topic.nl <mailto:mike.looijm...@topic.nl>> wrote:

This is basically the same change as I first sent a patch for in
        April, and
last pinged this Friday... The only real difference is that this one
        misses
passing error output from resize to /dev/null (which it should do to
        handle
        the case where tty exists, but resize does not).


    Yeah, indeed.


Apologies for missing that patch!

    Other problem is that "resize" outputs shell script on stdout to be
    executed, so the proper "total" invokation would be:

       /dev/tty[A-z]*) eval `resize 2>/dev/null` ;;

    The "eval" part is missing in your version...


Who is going to submit the One True patch with all the fixes in? I promise to merge it.

I'll send the one ring, eh, patch, in a few minutes. I'll merge the two into a single as well.

On second thought, just use Peter's patch "as is".

I've been experimenting with the "eval" part and it doesn't behave well. Tends to confuse minicom, create garbage, and in particular when run from "profile", it seems to result in counterproductive COLUMNS=0 and LINES=0.

I'm actually wondering why the call to "resize" is being done at all. Just calling "resize" has no effect, since it outputs the results on stdout as shell script, and that is being discarded. Looking at the commit that introduced it:


Looking at the codes in busybox (console-tools/resize.c), I can see that tcsetattr is actually called.
The output is due to:

    if (ENABLE_FEATURE_RESIZE_PRINT)
        printf("COLUMNS=%d;LINES=%d;export COLUMNS LINES;\n",
            w.ws_col, w.ws_row);

I can confirm that calling 'resize' is needed. Otherwise, you might get input wrapping on the same line when typing long commands.

I just tried busybox init based system and I also met '-sh: command: not found' error message. I think Peter's patch ([OE-core] [PATCHv2 1/1] base-files: profile: Avoid using "command" to determine if programs exist) is correct.

Best Regards,
Chen Qi

cc6360f4c4d9 (base-files: set dynamic COLUMNS via resize command)

that already has no effect whatsoever. See the man page for resize:
https://linux.die.net/man/1/resize

I also would consider running some program's output as shell script a bit spooky, it looks like a security hole waiting to be exploited.



Kind regards,

Mike Looijmans
System Expert

TOPIC Products
Materiaalweg 4, NL-5681 RJ Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
E-mail: mike.looijm...@topicproducts.com
Website: www.topicproducts.com

Please consider the environment before printing this e-mail




--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to