File tree Expand file tree Collapse file tree 2 files changed +33
-1
lines changed Expand file tree Collapse file tree 2 files changed +33
-1
lines changed Original file line number Diff line number Diff line change @@ -649,7 +649,8 @@ inline bool isBool(StringRef S) {
649
649
inline QuotingType needsQuotes (StringRef S) {
650
650
if (S.empty ())
651
651
return QuotingType::Single;
652
- if (isspace (S.front ()) || isspace (S.back ()))
652
+ if (isspace (static_cast <unsigned char >(S.front ())) ||
653
+ isspace (static_cast <unsigned char >(S.back ())))
653
654
return QuotingType::Single;
654
655
if (isNull (S))
655
656
return QuotingType::Single;
Original file line number Diff line number Diff line change
1
+ # # Check we do not crash/assert when dumping a broken section name.
2
+ # # Here we replace "foo" name with a sequence of characters that
3
+ # # do are not representable as unsigned char.
4
+ # # We used to have an assert for this case before.
5
+
6
+ # RUN: yaml2obj %s -o %t
7
+ # RUN: obj2yaml %t | FileCheck %s
8
+
9
+ # CHECK: --- !ELF
10
+ # CHECK-NEXT: FileHeader:
11
+ # CHECK-NEXT: Class: ELFCLASS64
12
+ # CHECK-NEXT: Data: ELFDATA2LSB
13
+ # CHECK-NEXT: Type: ET_REL
14
+ # CHECK-NEXT: Machine: EM_X86_64
15
+ # CHECK-NEXT: Sections:
16
+ # CHECK-NEXT: - Name: "{{.*}}"
17
+ # CHECK-NEXT: Type: SHT_PROGBITS
18
+ # CHECK-NEXT: ...
19
+
20
+ --- !ELF
21
+ FileHeader :
22
+ Class : ELFCLASS64
23
+ Data : ELFDATA2LSB
24
+ Type : ET_REL
25
+ Machine : EM_X86_64
26
+ Sections :
27
+ - Name : foo
28
+ Type : SHT_PROGBITS
29
+ - Name : .shstrtab
30
+ Type : SHT_STRTAB
31
+ Content : " 00FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE00"
You can’t perform that action at this time.
0 commit comments