mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-05-28 03:51:53 +02:00
gnu: indent: Add patch for CVE-2024-0911. [security fixes]
* gnu/packages/patches/indent-CVE-2024-0911.patch: Add patch here... * gnu/local.mk: ...here... * gnu/packages/code.scm (indent)[source]<origin>: ...and here.
This commit is contained in:
committed by
Zheng Junjie
parent
d076ae1c7a
commit
7bc82833a2
@@ -0,0 +1,61 @@
|
||||
Upstream issue: https://lists.gnu.org/archive/html/bug-indent/2024-01/msg00001.html
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
regression/TEST | 2 +-
|
||||
regression/input/comment-parent-heap-underread.c | 3 +++
|
||||
regression/standard/comment-parent-heap-underread.c | 5 +++++
|
||||
src/output.c | 2 +-
|
||||
4 files changed, 10 insertions(+), 2 deletions(-)
|
||||
create mode 100644 regression/input/comment-parent-heap-underread.c
|
||||
create mode 100644 regression/standard/comment-parent-heap-underread.c
|
||||
|
||||
diff --git a/regression/TEST b/regression/TEST
|
||||
index 7c07c2e..951b1a2 100755
|
||||
--- a/regression/TEST
|
||||
+++ b/regression/TEST
|
||||
@@ -40,6 +40,7 @@ BUGS="case-label.c one-line-1.c one-line-2.c one-line-3.c \
|
||||
macro.c enum.c elif.c nested.c wrapped-string.c minus_predecrement.c \
|
||||
bug-gnu-33364.c float-constant-suffix.c block-comments.c \
|
||||
- no-forced-nl-in-block-init.c hexadecimal_float.c binary-constant.c"
|
||||
+ no-forced-nl-in-block-init.c hexadecimal_float.c binary-constant.c \
|
||||
+ comment-parent-heap-underread.c"
|
||||
|
||||
INDENTSRC="args.c backup.h backup.c dirent_def.h globs.c indent.h \
|
||||
indent.c indent_globs.h io.c lexi.c memcpy.c parse.c pr_comment.c \
|
||||
diff --git a/regression/input/comment-parent-heap-underread.c
|
||||
b/regression/input/comment-parent-heap-underread.c
|
||||
new file mode 100644
|
||||
index 0000000..68e13cf
|
||||
--- /dev/null
|
||||
+++ b/regression/input/comment-parent-heap-underread.c
|
||||
@@ -0,0 +1,3 @@
|
||||
+void foo(void) {
|
||||
+/*a*/(1);
|
||||
+}
|
||||
diff --git a/regression/standard/comment-parent-heap-underread.c
|
||||
b/regression/standard/comment-parent-heap-underread.c
|
||||
new file mode 100644
|
||||
index 0000000..9a1c6e3
|
||||
--- /dev/null
|
||||
+++ b/regression/standard/comment-parent-heap-underread.c
|
||||
@@ -0,0 +1,5 @@
|
||||
+void
|
||||
+foo (void)
|
||||
+{
|
||||
+/*a*/ (1);
|
||||
+}
|
||||
diff --git a/src/output.c b/src/output.c
|
||||
index ee01bcc..17eee6e 100644
|
||||
--- a/src/output.c
|
||||
+++ b/src/output.c
|
||||
@@ -290,7 +290,7 @@ void set_buf_break (
|
||||
/* Did we just parse a bracket that will be put on the next line
|
||||
* by this line break? */
|
||||
|
||||
- if ((*token == '(') || (*token == '['))
|
||||
+ if (level > 0 && ((*token == '(') || (*token == '[')))
|
||||
{
|
||||
--level; /* then don't take it into account */
|
||||
}
|
||||
--
|
||||
2.43.0
|
||||
Reference in New Issue
Block a user