@@ -66,19 +66,19 @@ impl KeyFile {
66
66
67
67
pub fn get_double_list ( & self , group_name : & str , key : & str ) -> Result < Vec < f64 > , Error > {
68
68
unsafe {
69
- let mut length = mem:: uninitialized ( ) ;
69
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
70
70
let mut error = ptr:: null_mut ( ) ;
71
71
let ret = glib_sys:: g_key_file_get_double_list (
72
72
self . to_glib_none ( ) . 0 ,
73
73
group_name. to_glib_none ( ) . 0 ,
74
74
key. to_glib_none ( ) . 0 ,
75
- & mut length,
75
+ length. as_mut_ptr ( ) ,
76
76
& mut error,
77
77
) ;
78
78
if error. is_null ( ) {
79
79
Ok ( FromGlibContainer :: from_glib_container_num (
80
80
ret,
81
- length as usize ,
81
+ length. assume_init ( ) as usize ,
82
82
) )
83
83
} else {
84
84
Err ( from_glib_full ( error) )
@@ -88,11 +88,12 @@ impl KeyFile {
88
88
89
89
pub fn get_groups ( & self ) -> ( Vec < GString > , usize ) {
90
90
unsafe {
91
- let mut length = mem:: uninitialized ( ) ;
91
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
92
92
let ret = FromGlibPtrContainer :: from_glib_full ( glib_sys:: g_key_file_get_groups (
93
93
self . to_glib_none ( ) . 0 ,
94
- & mut length,
94
+ length. as_mut_ptr ( ) ,
95
95
) ) ;
96
+ let length = length. assume_init ( ) ;
96
97
( ret, length)
97
98
}
98
99
}
@@ -133,19 +134,19 @@ impl KeyFile {
133
134
134
135
pub fn get_integer_list ( & self , group_name : & str , key : & str ) -> Result < Vec < i32 > , Error > {
135
136
unsafe {
136
- let mut length = mem:: uninitialized ( ) ;
137
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
137
138
let mut error = ptr:: null_mut ( ) ;
138
139
let ret = glib_sys:: g_key_file_get_integer_list (
139
140
self . to_glib_none ( ) . 0 ,
140
141
group_name. to_glib_none ( ) . 0 ,
141
142
key. to_glib_none ( ) . 0 ,
142
- & mut length,
143
+ length. as_mut_ptr ( ) ,
143
144
& mut error,
144
145
) ;
145
146
if error. is_null ( ) {
146
147
Ok ( FromGlibContainer :: from_glib_container_num (
147
148
ret,
148
- length as usize ,
149
+ length. assume_init ( ) as usize ,
149
150
) )
150
151
} else {
151
152
Err ( from_glib_full ( error) )
@@ -155,14 +156,15 @@ impl KeyFile {
155
156
156
157
pub fn get_keys ( & self , group_name : & str ) -> Result < ( Vec < GString > , usize ) , Error > {
157
158
unsafe {
158
- let mut length = mem:: uninitialized ( ) ;
159
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
159
160
let mut error = ptr:: null_mut ( ) ;
160
161
let ret = glib_sys:: g_key_file_get_keys (
161
162
self . to_glib_none ( ) . 0 ,
162
163
group_name. to_glib_none ( ) . 0 ,
163
- & mut length,
164
+ length. as_mut_ptr ( ) ,
164
165
& mut error,
165
166
) ;
167
+ let length = length. assume_init ( ) ;
166
168
if error. is_null ( ) {
167
169
Ok ( ( FromGlibPtrContainer :: from_glib_full ( ret) , length) )
168
170
} else {
@@ -218,18 +220,21 @@ impl KeyFile {
218
220
locale : Option < & str > ,
219
221
) -> Result < Vec < GString > , Error > {
220
222
unsafe {
221
- let mut length = mem:: uninitialized ( ) ;
223
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
222
224
let mut error = ptr:: null_mut ( ) ;
223
225
let ret = glib_sys:: g_key_file_get_locale_string_list (
224
226
self . to_glib_none ( ) . 0 ,
225
227
group_name. to_glib_none ( ) . 0 ,
226
228
key. to_glib_none ( ) . 0 ,
227
229
locale. to_glib_none ( ) . 0 ,
228
- & mut length,
230
+ length. as_mut_ptr ( ) ,
229
231
& mut error,
230
232
) ;
231
233
if error. is_null ( ) {
232
- Ok ( FromGlibContainer :: from_glib_full_num ( ret, length as usize ) )
234
+ Ok ( FromGlibContainer :: from_glib_full_num (
235
+ ret,
236
+ length. assume_init ( ) as usize ,
237
+ ) )
233
238
} else {
234
239
Err ( from_glib_full ( error) )
235
240
}
@@ -259,17 +264,20 @@ impl KeyFile {
259
264
260
265
pub fn get_string_list ( & self , group_name : & str , key : & str ) -> Result < Vec < GString > , Error > {
261
266
unsafe {
262
- let mut length = mem:: uninitialized ( ) ;
267
+ let mut length = mem:: MaybeUninit :: uninit ( ) ;
263
268
let mut error = ptr:: null_mut ( ) ;
264
269
let ret = glib_sys:: g_key_file_get_string_list (
265
270
self . to_glib_none ( ) . 0 ,
266
271
group_name. to_glib_none ( ) . 0 ,
267
272
key. to_glib_none ( ) . 0 ,
268
- & mut length,
273
+ length. as_mut_ptr ( ) ,
269
274
& mut error,
270
275
) ;
271
276
if error. is_null ( ) {
272
- Ok ( FromGlibContainer :: from_glib_full_num ( ret, length as usize ) )
277
+ Ok ( FromGlibContainer :: from_glib_full_num (
278
+ ret,
279
+ length. assume_init ( ) as usize ,
280
+ ) )
273
281
} else {
274
282
Err ( from_glib_full ( error) )
275
283
}
0 commit comments