File tree Expand file tree Collapse file tree 3 files changed +6
-2
lines changed
gix-config/fuzz/fuzz_targets Expand file tree Collapse file tree 3 files changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -67,6 +67,11 @@ impl TryFrom<&BStr> for Integer {
67
67
return Err ( int_err ( s) ) ;
68
68
}
69
69
70
+ let last_idx = s. len ( ) - 1 ;
71
+ if !s. is_char_boundary ( last_idx) {
72
+ return Err ( int_err ( s) ) ;
73
+ }
74
+
70
75
let ( number, suffix) = s. split_at ( s. len ( ) - 1 ) ;
71
76
if let ( Ok ( value) , Ok ( suffix) ) = ( number. parse ( ) , suffix. parse ( ) ) {
72
77
Ok ( Self {
Original file line number Diff line number Diff line change @@ -53,6 +53,7 @@ fn invalid_from_str() {
53
53
assert ! ( Integer :: try_from( b( "g" ) ) . is_err( ) ) ;
54
54
assert ! ( Integer :: try_from( b( "123123123123123123123123" ) ) . is_err( ) ) ;
55
55
assert ! ( Integer :: try_from( b( "gg" ) ) . is_err( ) ) ;
56
+ assert ! ( Integer :: try_from( b( "™️🤦♂️" ) ) . is_err( ) ) ;
56
57
}
57
58
58
59
#[ test]
Original file line number Diff line number Diff line change @@ -8,8 +8,6 @@ use gix_config::{
8
8
File ,
9
9
} ;
10
10
use libfuzzer_sys:: fuzz_target;
11
- use std:: error:: Error ;
12
- use std:: fmt;
13
11
use std:: hint:: black_box;
14
12
15
13
#[ derive( Arbitrary , Debug ) ]
You can’t perform that action at this time.
0 commit comments