我有一个共享对象,它printf()
通过init的属性执行一些操作;很简单。它只是告诉我我设置的一些变量。
当我LD_PRELOAD=mylib.so ./program.sh -flags
由于program.sh
printfs 吐出错误时:
./program_run: line 16: cd: mylib.so: Startup
.: File name too long
./program_run: line 18: test: too many arguments
然后程序正常启动。看起来 bash 脚本在printf()
检查变量时被 s 破坏了。
有解决方法吗?