[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#30116: [PATCH] `substitute' crashes when file contains NUL character
From: |
Maxim Cournoyer |
Subject: |
bug#30116: [PATCH] `substitute' crashes when file contains NUL characters (core-updates)) |
Date: |
Wed, 13 Jun 2018 21:40:49 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) |
address@hidden (Ludovic Courtès) writes:
> Maxim Cournoyer <address@hidden> skribis:
>
>> From 9891e428eae0ed24e0d61862b3f5e298606b79eb Mon Sep 17 00:00:00 2001
>> From: Maxim Cournoyer <address@hidden>
>> Date: Sun, 14 Jan 2018 20:31:33 -0500
>> Subject: [PATCH] utils: Prevent substitute from crashing on files containing
>> NUL chars.
>>
>> Fixes issue #30116.
>>
>> * guix/build/utils.scm (substitute): Add condition to skip lines containing
>> the NUL character.
>
> [...]
>
>> + ((string-contains line (make-string 1 #\nul))
>
> Rather (string-index line #\nul).
>
>> + ;; The regexp functions of the GNU C library (which Guile uses)
>> + ;; cannot deal with NUL characters, so skip to the next line.
>> + (format #t "skipping line with NUL characters: ~s\n" line)
>> + (loop (read-line in 'concat)))
>
> Rather (format (current-error-port) …).
>
> It’s strange semantics, but it’s probably better than crashing in the
> contexts where we use it.
>
> Otherwise LGTM. This would have to go to the next ‘core-updates’ (or
> ‘core-updates-next’ in the meantime.)
>
> Thanks!
>
> Ludo’.
Ping. Is it the right time to merge this?
Maxim
- bug#30116: [PATCH] `substitute' crashes when file contains NUL characters (core-updates)),
Maxim Cournoyer <=