diff --git a/src/zabapgit_css_common.w3mi.xml b/src/zabapgit_css_common.w3mi.xml index 8e398b1d3..1908ab75d 100644 --- a/src/zabapgit_css_common.w3mi.xml +++ b/src/zabapgit_css_common.w3mi.xml @@ -21,7 +21,7 @@ MI ZABAPGIT_CSS_COMMON filesize - 12136 + 12136 MI diff --git a/src/zabapgit_js_common.w3mi.xml b/src/zabapgit_js_common.w3mi.xml index 7047c5f2f..386970cd1 100644 --- a/src/zabapgit_js_common.w3mi.xml +++ b/src/zabapgit_js_common.w3mi.xml @@ -21,7 +21,7 @@ MI ZABAPGIT_JS_COMMON filesize - 6500 + 6500 MI diff --git a/src/zabapgit_object_w3xx.prog.abap b/src/zabapgit_object_w3xx.prog.abap index d480c2259..d67f17668 100644 --- a/src/zabapgit_object_w3xx.prog.abap +++ b/src/zabapgit_object_w3xx.prog.abap @@ -34,8 +34,9 @@ CLASS lcl_object_w3super DEFINITION INHERITING FROM lcl_objects_super ABSTRACT. RAISING lcx_exception. METHODS patch_size - IMPORTING iv_size TYPE i - CHANGING ct_params TYPE ty_wwwparams_tt + IMPORTING iv_size TYPE i OPTIONAL " Overwrite if given + EXPORTING ev_size TYPE i " Return size as integer + CHANGING ct_params TYPE ty_wwwparams_tt " Param table to patch RAISING lcx_exception. METHODS patch_filename @@ -101,7 +102,6 @@ CLASS lcl_object_w3super IMPLEMENTATION. DATA lt_w3html TYPE STANDARD TABLE OF w3html. DATA lt_w3params TYPE STANDARD TABLE OF wwwparams. DATA lv_xstring TYPE xstring. - DATA ls_wwwparam LIKE LINE OF lt_w3params. DATA lv_size TYPE int4. SELECT SINGLE * INTO CORRESPONDING FIELDS OF ms_key @@ -141,12 +141,9 @@ CLASS lcl_object_w3super IMPLEMENTATION. lcx_exception=>raise( 'Cannot read W3xx data' ). ENDIF. - READ TABLE lt_w3params INTO ls_wwwparam WITH KEY name = 'filesize' ##NO_TEXT. - IF sy-subrc IS NOT INITIAL. - lcx_exception=>raise( 'Cannot read W3xx filesize' ). - ENDIF. - - lv_size = ls_wwwparam-value. + " Condense size string + get size to local integer + patch_size( IMPORTING ev_size = lv_size + CHANGING ct_params = lt_w3params ). " Remove file path (for security concerns) patch_filename( CHANGING ct_params = lt_w3params ). @@ -221,10 +218,8 @@ CLASS lcl_object_w3super IMPLEMENTATION. iv_ext = get_ext( lt_w3params ) ). WHEN OTHERS. lcx_exception=>raise( 'W3xx: Unknown serializer version' ). - ENDCASE. - CASE ms_key-relid. WHEN 'MI'. CALL FUNCTION 'SCMS_XSTRING_TO_BINARY' @@ -389,8 +384,12 @@ CLASS lcl_object_w3super IMPLEMENTATION. lcx_exception=>raise( |W3xx: Cannot find file size for { ms_key-objid }| ). ENDIF. - -value = iv_size. - SHIFT -value LEFT DELETING LEADING space. + IF iv_size IS NOT INITIAL. + -value = iv_size. + ENDIF. + CONDENSE -value. + + ev_size = -value. ENDMETHOD. " patch_size.