News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

ErrorReport trash error

Started by HSE, October 27, 2022, 10:07:53 AM

Previous topic - Next topic

HSE

Hi Biterider!

I maked a modification for objects without owner (DiskStream in this case) because original trash xax, wich contain error:Method Primer.ErrorReport, uses xsi, pErrorCaller:POINTER, dErrorCode:DWORD
  SetObject xsi
  OCall xsi.ErrorSet, dErrorCode
  m2m [xsi].pErrorCaller, pErrorCaller, xax
  .if [xsi].pOwner != NULL
    OCall [xsi].pOwner::Primer.ErrorReport, xsi, dErrorCode
  .endif
MethodEnd


now is:Method Primer.ErrorReport, uses xsi, pErrorCaller:POINTER, dErrorCode:DWORD
  SetObject xsi
  .if [xsi].pOwner != NULL
    OCall xsi.ErrorSet, dErrorCode
    m2m [xsi].pErrorCaller, pErrorCaller, xax
    OCall [xsi].pOwner::Primer.ErrorReport, xsi, dErrorCode
  .endif
MethodEnd


Regards, HSE.
Equations in Assembly: SmplMath

Biterider

Hi HSE
I'll check that, but it looks like a condition that is not handled correctly  :sad:
Thanks for reporting it.

Biterider

HSE

Hi Biterider!

Quote from: Biterider on October 28, 2022, 07:01:53 AM
I'll check that, but it looks like a condition that is not handled correctly  :sad:

Perhaps use is not like intended  :biggrin:

Just in case is:
    New DiskStream
    mov DskStreamIn, xax
    OCall DskStreamIn::DiskStream.Init, NULL, $OfsCStr("Data.json"), GENERIC_READ, \
                                    0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0
    .if xax == INVALID_HANDLE_VALUE                               
        jmp sale
    .endif


HSE
Equations in Assembly: SmplMath