@@ -3229,7 +3229,7 @@ static jl_value_t *jl_validate_cache_file(ios_t *f, jl_array_t *depmods, uint64_
32293229}
32303230
32313231// TODO?: refactor to make it easier to create the "package inspector"
3232- static jl_value_t * jl_restore_package_image_from_stream (ios_t * f , jl_image_t * image , jl_array_t * depmods , int complete )
3232+ static jl_value_t * jl_restore_package_image_from_stream (ios_t * f , jl_image_t * image , jl_array_t * depmods , int completeinfo )
32333233{
32343234 uint64_t checksum = 0 ;
32353235 int64_t dataendpos = 0 ;
@@ -3275,19 +3275,22 @@ static jl_value_t *jl_restore_package_image_from_stream(ios_t *f, jl_image_t *im
32753275 // reinit ccallables
32763276 jl_reinit_ccallable (& ccallable_list , base , NULL );
32773277 arraylist_free (& ccallable_list );
3278- if (complete ) {
3279- cachesizes_sv = jl_alloc_svec_uninit (7 );
3280- jl_svec_data (cachesizes_sv )[0 ] = jl_box_long (cachesizes .sysdata );
3281- jl_svec_data (cachesizes_sv )[1 ] = jl_box_long (cachesizes .isbitsdata );
3282- jl_svec_data (cachesizes_sv )[2 ] = jl_box_long (cachesizes .symboldata );
3283- jl_svec_data (cachesizes_sv )[3 ] = jl_box_long (cachesizes .tagslist );
3284- jl_svec_data (cachesizes_sv )[4 ] = jl_box_long (cachesizes .reloclist );
3285- jl_svec_data (cachesizes_sv )[5 ] = jl_box_long (cachesizes .gvarlist );
3286- jl_svec_data (cachesizes_sv )[6 ] = jl_box_long (cachesizes .fptrlist );
3278+
3279+ if (completeinfo ) {
3280+ cachesizes_sv = jl_alloc_svec (7 );
3281+ jl_svecset (cachesizes_sv , 0 , jl_box_long (cachesizes .sysdata ));
3282+ jl_svecset (cachesizes_sv , 1 , jl_box_long (cachesizes .isbitsdata ));
3283+ jl_svecset (cachesizes_sv , 2 , jl_box_long (cachesizes .symboldata ));
3284+ jl_svecset (cachesizes_sv , 3 , jl_box_long (cachesizes .tagslist ));
3285+ jl_svecset (cachesizes_sv , 4 , jl_box_long (cachesizes .reloclist ));
3286+ jl_svecset (cachesizes_sv , 5 , jl_box_long (cachesizes .gvarlist ));
3287+ jl_svecset (cachesizes_sv , 6 , jl_box_long (cachesizes .fptrlist ));
32873288 restored = (jl_value_t * )jl_svec (8 , restored , init_order , extext_methods , new_specializations , method_roots_list ,
32883289 ext_targets , edges , cachesizes_sv );
3289- } else
3290+ }
3291+ else {
32903292 restored = (jl_value_t * )jl_svec (2 , restored , init_order );
3293+ }
32913294 }
32923295 }
32933296
@@ -3301,24 +3304,24 @@ static void jl_restore_system_image_from_stream(ios_t *f, jl_image_t *image)
33013304 jl_restore_system_image_from_stream_ (f , image , NULL , checksum , NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL );
33023305}
33033306
3304- JL_DLLEXPORT jl_value_t * jl_restore_incremental_from_buf (const char * buf , jl_image_t * image , size_t sz , jl_array_t * depmods , int complete )
3307+ JL_DLLEXPORT jl_value_t * jl_restore_incremental_from_buf (const char * buf , jl_image_t * image , size_t sz , jl_array_t * depmods , int completeinfo )
33053308{
33063309 ios_t f ;
33073310 ios_static_buffer (& f , (char * )buf , sz );
3308- jl_value_t * ret = jl_restore_package_image_from_stream (& f , image , depmods , complete );
3311+ jl_value_t * ret = jl_restore_package_image_from_stream (& f , image , depmods , completeinfo );
33093312 ios_close (& f );
33103313 return ret ;
33113314}
33123315
3313- JL_DLLEXPORT jl_value_t * jl_restore_incremental (const char * fname , jl_array_t * depmods , int complete )
3316+ JL_DLLEXPORT jl_value_t * jl_restore_incremental (const char * fname , jl_array_t * depmods , int completeinfo )
33143317{
33153318 ios_t f ;
33163319 if (ios_file (& f , fname , 1 , 0 , 0 , 0 ) == NULL ) {
33173320 return jl_get_exceptionf (jl_errorexception_type ,
33183321 "Cache file \"%s\" not found.\n" , fname );
33193322 }
33203323 jl_image_t pkgimage = {};
3321- jl_value_t * ret = jl_restore_package_image_from_stream (& f , & pkgimage , depmods , complete );
3324+ jl_value_t * ret = jl_restore_package_image_from_stream (& f , & pkgimage , depmods , completeinfo );
33223325 ios_close (& f );
33233326 return ret ;
33243327}
@@ -3366,7 +3369,7 @@ JL_DLLEXPORT void jl_restore_system_image_data(const char *buf, size_t len)
33663369 JL_SIGATOMIC_END ();
33673370}
33683371
3369- JL_DLLEXPORT jl_value_t * jl_restore_package_image_from_file (const char * fname , jl_array_t * depmods , int complete )
3372+ JL_DLLEXPORT jl_value_t * jl_restore_package_image_from_file (const char * fname , jl_array_t * depmods , int completeinfo )
33703373{
33713374 void * pkgimg_handle = jl_dlopen (fname , JL_RTLD_LAZY );
33723375 if (!pkgimg_handle ) {
@@ -3418,7 +3421,7 @@ JL_DLLEXPORT jl_value_t *jl_restore_package_image_from_file(const char *fname, j
34183421 }
34193422 #endif
34203423
3421- jl_value_t * mod = jl_restore_incremental_from_buf (pkgimg_data , & pkgimage , * plen , depmods , complete );
3424+ jl_value_t * mod = jl_restore_incremental_from_buf (pkgimg_data , & pkgimage , * plen , depmods , completeinfo );
34223425
34233426 return mod ;
34243427}
0 commit comments