Displaying 4 results from an estimated 4 matches for "innerdq".
Did you mean:
inner
2019 Jan 25
0
[klibc:update-dash] parser: Fix parameter expansion inside inner double quotes
...r 2018 01:04:55 +0800
Committer: Ben Hutchings <ben at decadent.org.uk>
CommitDate: Fri, 25 Jan 2019 02:57:21 +0000
[klibc] parser: Fix parameter expansion inside inner double quotes
The parsing of parameter expansion inside inner double quotes
breaks because we never look for ENDVAR while innerdq is true.
echo "${x#"${x+''}"''}
This patch fixes it by pushing the syntax stack if innerdq is
true and we enter a new parameter expansion.
This patch also fixes a corner case where a bad substitution error
occurs within arithmetic expansion.
Reported-by: Denys Vl...
2020 Mar 28
0
[klibc:update-dash] dash: parser: Fix parameter expansion inside inner double quotes
...ent.org.uk>
CommitDate: Sat, 28 Mar 2020 21:42:55 +0000
[klibc] dash: parser: Fix parameter expansion inside inner double quotes
[ dash commit 48ca00863af909461d1372998bb90549f27abaaf ]
The parsing of parameter expansion inside inner double quotes
breaks because we never look for ENDVAR while innerdq is true.
echo "${x#"${x+''}"''}
This patch fixes it by pushing the syntax stack if innerdq is
true and we enter a new parameter expansion.
This patch also fixes a corner case where a bad substitution error
occurs within arithmetic expansion.
Reported-by: Denys Vl...
2019 Jan 25
0
[klibc:update-dash] parser: Add syntax stack for recursive parsing
.../parser.c b/usr/dash/parser.c
index 8b945e36..c28363ca 100644
--- a/usr/dash/parser.c
+++ b/usr/dash/parser.c
@@ -80,6 +80,18 @@ struct heredoc {
int striptabs; /* if set, strip leading tabs */
};
+struct synstack {
+ const char *syntax;
+ struct synstack *prev;
+ struct synstack *next;
+ int innerdq;
+ int varpushed;
+ int dblquote;
+ int varnest; /* levels of variables expansion */
+ int parenlevel; /* levels of parens in arithmetic */
+ int dqvarnest; /* levels of variables expansion within double quotes */
+};
+
struct heredoc *heredoclist; /* list of here documents to read */
@@ -8...
2020 Mar 28
0
[klibc:update-dash] dash: parser: Add syntax stack for recursive parsing
.../parser.c b/usr/dash/parser.c
index 8b945e36..c28363ca 100644
--- a/usr/dash/parser.c
+++ b/usr/dash/parser.c
@@ -80,6 +80,18 @@ struct heredoc {
int striptabs; /* if set, strip leading tabs */
};
+struct synstack {
+ const char *syntax;
+ struct synstack *prev;
+ struct synstack *next;
+ int innerdq;
+ int varpushed;
+ int dblquote;
+ int varnest; /* levels of variables expansion */
+ int parenlevel; /* levels of parens in arithmetic */
+ int dqvarnest; /* levels of variables expansion within double quotes */
+};
+
struct heredoc *heredoclist; /* list of here documents to read */
@@ -8...