@@ -830,18 +830,20 @@ fn run_core(
830830 let mut course_data = HashMap :: < String , Vec < ( String , String ) > > :: new ( ) ;
831831 let mut exercises_and_paths = vec ! [ ] ;
832832 for exercise_detail in exercises_details {
833- // get course and exercise name from server
834- let ex_details = core. get_exercise_details ( exercise_detail. id ) ?;
835833 // check if the checksum is different from what's already on disk
836- if let Some ( course_config) = projects_config. courses . get ( & ex_details. course_name ) {
837- if let Some ( exercise) = course_config. exercises . get ( & ex_details. exercise_name ) {
834+ if let Some ( course_config) =
835+ projects_config. courses . get ( & exercise_detail. course_name )
836+ {
837+ if let Some ( exercise) =
838+ course_config. exercises . get ( & exercise_detail. exercise_name )
839+ {
838840 if exercise_detail. checksum == exercise. checksum {
839841 // skip this exercise
840842 log:: info!(
841843 "Skipping exercise {} ({} in {}) due to identical checksum" ,
842844 exercise_detail. id,
843- ex_details . course_name,
844- ex_details . exercise_name
845+ exercise_detail . course_name,
846+ exercise_detail . exercise_name
845847 ) ;
846848 continue ;
847849 }
@@ -850,13 +852,13 @@ fn run_core(
850852
851853 let target = ProjectsConfig :: get_exercise_download_target (
852854 & projects_dir,
853- & ex_details . course_name ,
854- & ex_details . exercise_name ,
855+ & exercise_detail . course_name ,
856+ & exercise_detail . exercise_name ,
855857 ) ;
856858
857- let entry = course_data. entry ( ex_details . course_name ) ;
859+ let entry = course_data. entry ( exercise_detail . course_name ) ;
858860 let course_exercises = entry. or_default ( ) ;
859- course_exercises. push ( ( ex_details . exercise_name , exercise_detail. checksum ) ) ;
861+ course_exercises. push ( ( exercise_detail . exercise_name , exercise_detail. checksum ) ) ;
860862
861863 exercises_and_paths. push ( ( exercise_detail. id , target) ) ;
862864 }
0 commit comments