[rtems-tools commit] tester/rt: use shlex.split to split command args
Chris Johns
chrisj at rtems.org
Wed Jun 21 00:15:17 UTC 2023
Module: rtems-tools
Branch: master
Commit: 60e793a17c3847f0a297bb593c1eda9c73e2df52
Changeset: http://git.rtems.org/rtems-tools/commit/?id=60e793a17c3847f0a297bb593c1eda9c73e2df52
Author: Muhammad Sulthan Mazaya <msulthanmazaya at gmail.com>
Date: Tue Jun 20 08:47:00 2023 +1000
tester/rt: use shlex.split to split command args
The regular split-by-space function used to split command arguments
creates compatibility issues with many shell command syntaxes. A
specific example is the handling of string arguments, as shown below:
%define renode_args -e start_opts -e "s %{bsp_resc_script}"
Thus, it is changed to use shlex.split instead. It splits
the command arguments using shell-like syntax. More about shlex
module here: https://docs.python.org/3/library/shlex.html
---
tester/rt/config.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tester/rt/config.py b/tester/rt/config.py
index 8a433af..c0c31de 100644
--- a/tester/rt/config.py
+++ b/tester/rt/config.py
@@ -37,6 +37,7 @@ from __future__ import print_function
import datetime
import os
import re
+import shlex
import threading
from rtemstoolkit import configuration
@@ -326,7 +327,7 @@ class file(config.file):
if len(_data):
ds = [_data[0]]
if len(_data) > 1:
- ds += _data[1].split()
+ ds += shlex.split(_data[1], posix=False)
ds = self.expand(ds)
if _directive == '%console':
More information about the vc
mailing list