@@ -813,6 +813,11 @@ Tox *create_tox(int udp_enabled, int orbot_enabled, const char *proxy_host, uint
813813
814814void update_savedata_file (const Tox * tox , const uint8_t * passphrase , size_t passphrase_len )
815815{
816+ if (tox == NULL )
817+ {
818+ dbg (9 , "update_savedata_file:ERROR:tox ptr is NULL" );
819+ return ;
820+ }
816821 size_t size = tox_get_savedata_size (tox );
817822 // dbg(9, "update_savedata_file:tox_get_savedata_size=%d", (int)size);
818823
@@ -824,6 +829,12 @@ void update_savedata_file(const Tox *tox, const uint8_t *passphrase, size_t pass
824829
825830 char * savedata = calloc (1 , size );
826831 // dbg(9, "update_savedata_file:savedata=%p", savedata);
832+ if (tox == NULL )
833+ {
834+ dbg (9 , "update_savedata_file:ERROR:tox ptr is NULL" );
835+ free (savedata );
836+ return ;
837+ }
827838 tox_get_savedata (tox , (uint8_t * )savedata );
828839 char * full_path_filename = calloc (1 , MAX_FULL_PATH_LENGTH );
829840
@@ -847,12 +858,12 @@ void update_savedata_file(const Tox *tox, const uint8_t *passphrase, size_t pass
847858 // dbg(9, "update_savedata_file:savedata_enc=%p", savedata_enc);
848859 TOX_ERR_ENCRYPTION error ;
849860 tox_pass_encrypt ((const uint8_t * )savedata , size , passphrase , passphrase_len , savedata_enc , & error );
850- // dbg(9, "update_savedata_file:tox_pass_encrypt:%d", (int)error);
861+ dbg (9 , "update_savedata_file:tox_pass_encrypt:%d" , (int )error );
851862 bool res = false;
852863
853- if ( size_enc < TOX_PASS_ENCRYPTION_EXTRA_LENGTH )
864+ if (( size_enc < TOX_PASS_ENCRYPTION_EXTRA_LENGTH ) || ( error != TOX_ERR_ENCRYPTION_OK ) )
854865 {
855- dbg (9 , "update_savedata_file:ERROR:size_enc < TOX_PASS_ENCRYPTION_EXTRA_LENGTH" );
866+ dbg (9 , "update_savedata_file:ERROR:size_enc < TOX_PASS_ENCRYPTION_EXTRA_LENGTH or error != TOX_ERR_ENCRYPTION_OK " );
856867 if (savedata )
857868 {
858869 free (savedata );
0 commit comments