From a7697f9a2bf45ff3f149b846a5e99128c6eda4eb Mon Sep 17 00:00:00 2001 From: sbcgua Date: Sat, 12 Nov 2016 12:04:48 +0200 Subject: [PATCH] fixes --- src/zabapgit_repo.prog.abap | 1 + src/zabapgit_repo_impl.prog.abap | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/zabapgit_repo.prog.abap b/src/zabapgit_repo.prog.abap index 65aff608d..bc9646648 100644 --- a/src/zabapgit_repo.prog.abap +++ b/src/zabapgit_repo.prog.abap @@ -117,6 +117,7 @@ CLASS lcl_repo_online DEFINITION INHERITING FROM lcl_repo FINAL. IMPORTING io_log TYPE REF TO lcl_log OPTIONAL RETURNING VALUE(rt_results) TYPE ty_results_tt RAISING lcx_exception, + reset_status, rebuild_local_checksums RAISING lcx_exception, push diff --git a/src/zabapgit_repo_impl.prog.abap b/src/zabapgit_repo_impl.prog.abap index 04c0c406c..c2915436d 100644 --- a/src/zabapgit_repo_impl.prog.abap +++ b/src/zabapgit_repo_impl.prog.abap @@ -62,16 +62,20 @@ CLASS lcl_repo_online IMPLEMENTATION. set( iv_sha1 = mv_branch ). - CLEAR mt_status. " Reset status + reset_status( ). COMMIT WORK AND WAIT. ENDMETHOD. "deserialize + METHOD reset_status. + CLEAR mt_status. + ENDMETHOD. " reset_status. + METHOD refresh. super->refresh( iv_drop_cache ). - CLEAR mt_status. + reset_status( ). lcl_progress=>show( iv_key = 'Fetch' iv_current = 1 @@ -243,6 +247,7 @@ CLASS lcl_repo_online IMPLEMENTATION. DATA: lt_remote TYPE ty_files_tt, lt_local TYPE ty_files_item_tt, + ls_last_item TYPE ty_item, lv_branch_equal TYPE abap_bool, lt_checksums TYPE lcl_persistence_repo=>ty_local_checksum_tt. @@ -260,10 +265,11 @@ CLASS lcl_repo_online IMPLEMENTATION. SORT lt_remote BY path filename. LOOP AT lt_local ASSIGNING . - AT NEW item. + IF ls_last_item <> -item. " New item reached ? APPEND INITIAL LINE TO lt_checksums ASSIGNING . -item = -item. - ENDAT. + ls_last_item = -item. + ENDIF. READ TABLE lt_remote ASSIGNING WITH KEY path = -file-path filename = -file-filename @@ -282,6 +288,8 @@ CLASS lcl_repo_online IMPLEMENTATION. ENDLOOP. set( it_checksums = lt_checksums ). + reset_status( ). + ENDMETHOD. " rebuild_local_checksums. ENDCLASS. "lcl_repo_online IMPLEMENTATION