On Tuesday 15 January 2008 21:35, Martinb_ARM_NOMMU_KISSDVD wrote:
> Same problem for me
> I was thinking it was related to hush
> i did made a post to vda but i did not post to the list because i was not
> sure its a real bug

Not really, I'm sure it really happens on NOMMU.

> I wil paste my message again to the list and i hope someone is able to fix
> this
> (this does break all my scripting so i still cant use the 1.9.0 hush)
> 
> /paste
> if i have the folowing script:
> #!/bin/hush
> export TVOFF=`echo hallo`
> echo $TVOFF

On 1.9.0, it will not work. Command substituton is simply disabled
for NOMMU in 1.9.0:

#if !BB_MMU
/* A bit drastic. Can allow some simpler commands
 * by analysing command in generate_stream_from_list()
 */
#undef ENABLE_HUSH_TICK
#define ENABLE_HUSH_TICK 0
#endif

Since it seems to be a bit drastic indeed, I paln to enable it again.
However, note that it will be a dangerous thing to use.
I added an explanation in comments in hush.c.

Martin, if you want to try the fix, apply this patch and then
replace hush.c with attached one.
--
vda

Attachment: hush.c.bz2
Description: BZip2 compressed data

diff -d -urpN busybox.0/include/libbb.h busybox.1/include/libbb.h
--- busybox.0/include/libbb.h	2008-02-09 12:54:41.000000000 +0000
+++ busybox.1/include/libbb.h	2008-02-10 11:03:31.000000000 +0000
@@ -664,6 +664,9 @@ enum {
   void re_exec(char **argv) ATTRIBUTE_NORETURN;
   void forkexit_or_rexec(char **argv);
   extern bool re_execed;
+  int  BUG_fork_is_unavailable_on_nommu(void);
+  int  BUG_daemon_is_unavailable_on_nommu(void);
+  void BUG_bb_daemonize_is_unavailable_on_nommu(void);
 # define fork()          BUG_fork_is_unavailable_on_nommu()
 # define daemon(a,b)     BUG_daemon_is_unavailable_on_nommu()
 # define bb_daemonize(a) BUG_bb_daemonize_is_unavailable_on_nommu()
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to