@@ -42,6 +42,7 @@ mod tests {
4242 // Clean up
4343 unsafe {
4444 derivation_xpriv_free ( xprv) ;
45+ error. free_message ( ) ;
4546 }
4647 }
4748
@@ -67,9 +68,8 @@ mod tests {
6768 // Clean up
6869 unsafe {
6970 derivation_xpub_free ( xpub) ;
70- }
71- unsafe {
7271 derivation_xpriv_free ( xprv) ;
72+ error. free_message ( ) ;
7373 }
7474 }
7575
@@ -97,9 +97,8 @@ mod tests {
9797 // Clean up
9898 unsafe {
9999 derivation_string_free ( xprv_str) ;
100- }
101- unsafe {
102100 derivation_xpriv_free ( xprv) ;
101+ error. free_message ( ) ;
103102 }
104103 }
105104
@@ -129,12 +128,9 @@ mod tests {
129128 // Clean up
130129 unsafe {
131130 derivation_string_free ( xpub_str) ;
132- }
133- unsafe {
134131 derivation_xpub_free ( xpub) ;
135- }
136- unsafe {
137132 derivation_xpriv_free ( xprv) ;
133+ error. free_message ( ) ;
138134 }
139135 }
140136
@@ -166,9 +162,8 @@ mod tests {
166162 // Clean up
167163 unsafe {
168164 derivation_xpub_free ( xpub) ;
169- }
170- unsafe {
171165 derivation_xpriv_free ( xprv) ;
166+ error. free_message ( ) ;
172167 }
173168 }
174169
@@ -207,6 +202,8 @@ mod tests {
207202 let path_str =
208203 unsafe { CStr :: from_ptr ( payment_path. as_ptr ( ) as * const c_char ) } . to_str ( ) . unwrap ( ) ;
209204 assert_eq ! ( path_str, "m/44'/1'/0'/0/0" ) ;
205+
206+ unsafe { error. free_message ( ) } ;
210207 }
211208
212209 #[ test]
@@ -258,6 +255,8 @@ mod tests {
258255 & mut error,
259256 ) ;
260257 assert ! ( success) ;
258+
259+ unsafe { error. free_message ( ) } ;
261260 }
262261
263262 #[ test]
@@ -289,6 +288,7 @@ mod tests {
289288 // Clean up
290289 unsafe {
291290 derivation_xpriv_free ( xpriv) ;
291+ error. free_message ( ) ;
292292 }
293293 }
294294
@@ -304,6 +304,8 @@ mod tests {
304304
305305 // Note: The BIP32 implementation actually accepts seeds as small as 16 bytes
306306 // so we can't test for invalid seed length error here
307+
308+ unsafe { error. free_message ( ) } ;
307309 }
308310
309311 #[ test]
@@ -329,12 +331,9 @@ mod tests {
329331 // Clean up
330332 unsafe {
331333 derivation_string_free ( xpub_string) ;
332- }
333- unsafe {
334334 derivation_xpub_free ( xpub) ;
335- }
336- unsafe {
337335 derivation_xpriv_free ( master_key) ;
336+ error. free_message ( ) ;
338337 }
339338 }
340339
@@ -363,9 +362,8 @@ mod tests {
363362 // Clean up
364363 unsafe {
365364 derivation_string_free ( xpriv_string) ;
366- }
367- unsafe {
368365 derivation_xpriv_free ( master_key) ;
366+ error. free_message ( ) ;
369367 }
370368 }
371369
@@ -396,9 +394,8 @@ mod tests {
396394 // Clean up
397395 unsafe {
398396 derivation_xpub_free ( xpub) ;
399- }
400- unsafe {
401397 derivation_xpriv_free ( master_key) ;
398+ error. free_message ( ) ;
402399 }
403400 }
404401
@@ -452,6 +449,8 @@ mod tests {
452449 let path_str =
453450 unsafe { CStr :: from_ptr ( buffer. as_ptr ( ) as * const c_char ) } . to_str ( ) . unwrap ( ) ;
454451 assert ! ( path_str. contains( "m/" ) ) ;
452+
453+ unsafe { error. free_message ( ) } ;
455454 }
456455
457456 #[ test]
@@ -494,6 +493,8 @@ mod tests {
494493 derivation_xpriv_free ( xprv) ;
495494 }
496495 }
496+
497+ unsafe { error. free_message ( ) } ;
497498 }
498499
499500 #[ test]
@@ -524,6 +525,8 @@ mod tests {
524525 derivation_coinjoin_path ( FFINetwork :: Testnet , 0 , ptr:: null_mut ( ) , 256 , & mut error) ;
525526 assert ! ( !success) ;
526527 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
528+
529+ unsafe { error. free_message ( ) } ;
527530 }
528531
529532 #[ test]
@@ -554,6 +557,8 @@ mod tests {
554557 ) ;
555558 assert ! ( !success) ;
556559 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
560+
561+ unsafe { error. free_message ( ) } ;
557562 }
558563
559564 #[ test]
@@ -591,15 +596,10 @@ mod tests {
591596 // Clean up
592597 unsafe {
593598 derivation_string_free ( main_str) ;
594- }
595- unsafe {
596599 derivation_string_free ( test_str) ;
597- }
598- unsafe {
599600 derivation_xpriv_free ( xprv_main) ;
600- }
601- unsafe {
602601 derivation_xpriv_free ( xprv_test) ;
602+ error. free_message ( ) ;
603603 }
604604 }
605605
@@ -611,6 +611,8 @@ mod tests {
611611
612612 assert ! ( xpub. is_null( ) ) ;
613613 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
614+
615+ unsafe { error. free_message ( ) } ;
614616 }
615617
616618 #[ test]
@@ -621,6 +623,8 @@ mod tests {
621623
622624 assert ! ( xprv_str. is_null( ) ) ;
623625 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
626+
627+ unsafe { error. free_message ( ) } ;
624628 }
625629
626630 #[ test]
@@ -631,6 +635,8 @@ mod tests {
631635
632636 assert ! ( xpub_str. is_null( ) ) ;
633637 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
638+
639+ unsafe { error. free_message ( ) } ;
634640 }
635641
636642 #[ test]
@@ -664,9 +670,8 @@ mod tests {
664670 // Clean up
665671 unsafe {
666672 derivation_xpub_free ( xpub) ;
667- }
668- unsafe {
669673 derivation_xpriv_free ( xprv) ;
674+ error. free_message ( ) ;
670675 }
671676 }
672677
@@ -701,6 +706,8 @@ mod tests {
701706 } ;
702707 assert ! ( xpriv. is_null( ) ) ;
703708 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
709+
710+ unsafe { error. free_message ( ) } ;
704711 }
705712
706713 #[ test]
@@ -729,6 +736,8 @@ mod tests {
729736 derivation_xpriv_free ( xpriv) ;
730737 }
731738 }
739+
740+ unsafe { error. free_message ( ) } ;
732741 }
733742
734743 #[ test]
@@ -769,6 +778,8 @@ mod tests {
769778 ) ;
770779 assert ! ( !success) ;
771780 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
781+
782+ unsafe { error. free_message ( ) } ;
772783 }
773784
774785 #[ test]
@@ -810,6 +821,8 @@ mod tests {
810821 ) ;
811822 assert ! ( !success) ;
812823 assert_eq ! ( error. code, FFIErrorCode :: InvalidInput ) ;
824+
825+ unsafe { error. free_message ( ) } ;
813826 }
814827
815828 #[ test]
@@ -843,6 +856,8 @@ mod tests {
843856 assert_eq ! ( path1, "m/44'/1'/0'" ) ;
844857 assert_eq ! ( path2, "m/44'/1'/5'" ) ;
845858 assert_ne ! ( path1, path2) ;
859+
860+ unsafe { error. free_message ( ) } ;
846861 }
847862
848863 #[ test]
@@ -880,6 +895,8 @@ mod tests {
880895 let path_str =
881896 unsafe { CStr :: from_ptr ( buffer. as_ptr ( ) as * const c_char ) } . to_str ( ) . unwrap ( ) ;
882897 assert_eq ! ( path_str, "m/44'/1'/0'/1/3" ) ;
898+
899+ unsafe { error. free_message ( ) } ;
883900 }
884901
885902 #[ test]
@@ -957,6 +974,7 @@ mod tests {
957974 derivation_xpriv_free ( child_xprv) ;
958975 derivation_xpub_free ( master_xpub) ;
959976 derivation_xpriv_free ( master_xprv) ;
977+ error. free_message ( ) ;
960978 }
961979 }
962980}
0 commit comments