From: Chris Larson Date: Tue, 8 Jun 2010 14:46:58 +0000 (-0700) Subject: utils.bbclass: set close_fds=True by default for the popen helper X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f6ac2d399aae6c6aad9b24a96abc860229c4a603;p=openembedded.git utils.bbclass: set close_fds=True by default for the popen helper Signed-off-by: Chris Larson --- diff --git a/classes/relocatable.bbclass b/classes/relocatable.bbclass index eb5b9e62ed..e4ababa57d 100644 --- a/classes/relocatable.bbclass +++ b/classes/relocatable.bbclass @@ -75,7 +75,8 @@ def process_dir (directory, d): if len(new_rpaths): args = ":".join(new_rpaths) #bb.note("Setting rpath for %s to %s" %(fpath,args)) - sub.call([cmd, '-r', args, fpath]) + oe_system(d, [cmd, '-r', args, fpath], shell=False, + stdout=open("/dev/null", "a")) if perms: os.chmod(fpath, perms) diff --git a/classes/utils.bbclass b/classes/utils.bbclass index 4e352e3b9c..64d6c231ec 100644 --- a/classes/utils.bbclass +++ b/classes/utils.bbclass @@ -61,13 +61,16 @@ def oe_popen(d, cmd, **kwargs): d.setVar("__oe_popen_env", env) kwargs["env"] = env + kwargs["close_fds"] = True kwargs["preexec_fn"] = subprocess_setup return Popen(cmd, **kwargs) -def oe_system(d, cmd): +def oe_system(d, cmd, **kwargs): """ Popen based version of os.system. """ - return oe_popen(d, cmd, shell=True).wait() + if not "shell" in kwargs: + kwargs["shell"] = True + return oe_popen(d, cmd, **kwargs).wait() # for MD5/SHA handling def base_chk_load_parser(config_paths):