From e6d96aacefec154ae7a452aa95f1cdd3d28c87d5 Mon Sep 17 00:00:00 2001 From: Marc Bernard Date: Mon, 10 Mar 2025 18:57:39 +0000 Subject: [PATCH] Keep login in staging --- .../pages/zcl_abapgit_gui_page_stage.clas.abap | 16 +++++++++++----- src/utils/zcl_abapgit_path.clas.abap | 4 +++- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/ui/pages/zcl_abapgit_gui_page_stage.clas.abap b/src/ui/pages/zcl_abapgit_gui_page_stage.clas.abap index cc94cb106..f8afdaebb 100644 --- a/src/ui/pages/zcl_abapgit_gui_page_stage.clas.abap +++ b/src/ui/pages/zcl_abapgit_gui_page_stage.clas.abap @@ -137,7 +137,7 @@ ENDCLASS. -CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. +CLASS ZCL_ABAPGIT_GUI_PAGE_STAGE IMPLEMENTATION. METHOD check_selected. @@ -154,6 +154,7 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. " Check all added files if the exist in different paths (packages) without being removed LOOP AT io_files->mt_entries ASSIGNING WHERE v = zif_abapgit_definitions=>c_method-add. + " Allow mixed case path, but check filename to lower case zcl_abapgit_path=>split_file_location( EXPORTING iv_fullpath = -k @@ -161,6 +162,8 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. ev_path = ls_file-path ev_filename = ls_file-filename ). + ls_file-filename = to_lower( ls_file-filename ). + " Skip packages since they all have identical filenames IF ls_file-filename <> 'package.devc.xml'. lv_pattern = '*/' && to_upper( ls_file-filename ). @@ -235,11 +238,11 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. CREATE OBJECT lo_component EXPORTING - io_repo = io_repo - iv_seed = iv_seed - iv_sci_result = iv_sci_result + io_repo = io_repo + iv_seed = iv_seed + iv_sci_result = iv_sci_result ii_force_refresh = ii_force_refresh - ii_obj_filter = ii_obj_filter. + ii_obj_filter = ii_obj_filter. ri_page = zcl_abapgit_gui_page_hoc=>create( iv_page_title = 'Stage' @@ -738,6 +741,7 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. "Ignore Files that we don't want to stage, so any errors don't stop the staging process WHERE v <> zif_abapgit_definitions=>c_method-skip. + " Allow mixed case path, but check filename to lower case zcl_abapgit_path=>split_file_location( EXPORTING iv_fullpath = -k @@ -745,6 +749,8 @@ CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION. ev_path = ls_file-path ev_filename = ls_file-filename ). + ls_file-filename = to_lower( ls_file-filename ). + READ TABLE ms_files-status ASSIGNING WITH TABLE KEY path = ls_file-path diff --git a/src/utils/zcl_abapgit_path.clas.abap b/src/utils/zcl_abapgit_path.clas.abap index a8f204d63..d4d5724a9 100644 --- a/src/utils/zcl_abapgit_path.clas.abap +++ b/src/utils/zcl_abapgit_path.clas.abap @@ -27,6 +27,8 @@ CLASS zcl_abapgit_path DEFINITION IMPORTING iv_path TYPE string RETURNING VALUE(rv_filename) TYPE string. + PROTECTED SECTION. + PRIVATE SECTION. ENDCLASS. @@ -125,7 +127,7 @@ CLASS ZCL_ABAPGIT_PATH IMPLEMENTATION. ev_filename = iv_fullpath. ENDIF. - ev_filename = cl_http_utility=>unescape_url( escaped = to_lower( ev_filename ) ). + ev_filename = cl_http_utility=>unescape_url( escaped = ev_filename ). ENDMETHOD. ENDCLASS.