Jump to content

Attila Kovacs

Members
  • Content Count

    1936
  • Joined

  • Last visited

  • Days Won

    25

Everything posted by Attila Kovacs

  1. Attila Kovacs

    Translation of C headers.

    btw. in the header and also on the screenshot from Mahdi the first parameters are PCWSTR (LPCWSTR) (const) and not always PWSTR (LPWSTR). this however makes no difference, at least at the moment, as they are defined the same in delphi
  2. Attila Kovacs

    Translation of C headers.

    opacity : single := 0.5; Element.SetAttributeValue('opacity', D2D1_SVG_ATTRIBUTE_POD_TYPE_FLOAT, @opacity, SizeOf(opacity)); where element = 'svg' if this was the question
  3. Attila Kovacs

    Translation of C headers.

    @pyscripter yup, was just playing around, it's also RGBA so the original 1, 0, 0, 0 did also not make much sense, mentioned that already earlier
  4. Attila Kovacs

    Translation of C headers.

    @Kas Ob. is right. With his order this works too: Element.SetAttributeValue('fill', D2D1_SVG_ATTRIBUTE_STRING_TYPE_SVG, '#FF0000');
  5. Attila Kovacs

    Translation of C headers.

    @Kas Ob. your version AV's here, I get the recoloring 😄 what now hm, sorry, it works, so declare in reverse order?
  6. Attila Kovacs

    Translation of C headers.

    @pyscripter d2missing again without the reformatting, sorry 😉 D2DMissing.7z btw. he is using IDA btw2. RecolorSubtree(Root, D2D1ColorF(1, 0, 0, 0)); should be the other way, 0,0,0,1, rgba
  7. Attila Kovacs

    Translation of C headers.

    ofc some of the const's I had to declare as it did not compile at the beginning, Berlin U2. svg.7z
  8. Attila Kovacs

    Translation of C headers.

    yippiii, it works. nice one @Mahdi Safsafi
  9. Attila Kovacs

    Translation of C headers.

    As I first mentioned the in the AV reading address 0x00000001, the "1" is the parameter D2D1_SVG_ATTRIBUTE_POD_TYPE_COLOR. Change it to D2D1_SVG_ATTRIBUTE_POD_TYPE_FILL_MODE and you will get AV reading address 0x00000002. So I thought that the wrong "SetAttributeValue" is called, so I changed the order of the "SetAttributeValue"'s => swapped the last two. But as I can't see any changes in the image and @Mahdi Safsafi showed in IDA that this is a completely different call, I'm not sure what is going on. But it's a good start for you to sort it out.
  10. Attila Kovacs

    Translation of C headers.

    looks like I'm being ignored here. change the order of the last 2 SetAttributeValue()'s in the interface, no AV but I can't see any changes, maybe you would know why and see if it helps.
  11. Attila Kovacs

    Translation of C headers.

    why don't you debug into the dll? "read of address 0x000000001" where "0x000000001" is D2D1_SVG_ATTRIBUTE_POD_TYPE_COLOR so just my 2 cent's the overloads are mixed up
  12. Attila Kovacs

    Ctrl Tab Ide Plugin

    The first time I saw your idea I did not see the benefits but after adding some useful information to the form it could be a great extension though. However, I'm not the OTA guy, so my version is using heavily the IDE itself, but the most could be achieved through the official way. (Assumed you will get the plugin API sources for Parnassus, which is not anymore available since emba purchased it....) or a bit more info:
  13. Attila Kovacs

    Help with string extraction function

    yes, less, and slower, the rest is the same codegen -> less asm, slower exec, how's that? OoOE? Aligning?
  14. Attila Kovacs

    Help with string extraction function

    by the way, if you look at the last code pasted by me, if you remove if len = 0 then exit(S); at the beginning, it's the same codegen and will be ~4% slower. Of course testing with non-empty input. Early triggering of OoOE?
  15. Attila Kovacs

    Is quality.embarcadero.com down?

    same here, "Sorry, an error occurred trying to log you in - please try again." however I'm fine with it
  16. Attila Kovacs

    Anybody up for an ethics question?

    if you don't have "Plan B", you should not try to catch exceptions
  17. Attila Kovacs

    How do you organize developing new features in big projects?

    And you can fire up a new project having everything needed in just seconds. Regardless if for testing/new feature/completely new app etc...
  18. Attila Kovacs

    How do you organize developing new features in big projects?

    Turn this to an advantage. It will pay off.
  19. I've got tired restarting the IDE because of the recurring AV when I was adding a new unit/form etc.. to the current project. Looks like it was fixed in 10.3 https://quality.embarcadero.com/browse/RSP-15471 I don't know, because I'm still on 10.1 U2, and there will be never an official patch for that. The problem is crystal clear: 2203A97A E861C7E6FF call $21ea70e0 ; FindTopEditView 2203A97F 8B4044 mov eax,[eax+$44] not checking against "nil" in EAX. (Why this returning nil after an amount of time is a different question and it's not something we could ever fix in the binaries) the fix is almost as easy as spotting the problem, detouring the call, and do some check: procedure PatchStructuralHighlighterCode; asm call FindTopEditView TEST EAX, EAX JNE @ok call PErrorProc // debug logging jmp ReturnNil @ok: jmp Return end; Now, @FindTopEditView, @ReturnNil and @Return are version specific values, obviously, I have the addresses only for my IDE version. As I don't feel the urge for maintaining and supporting fixes for Delphi but I would share the details if anybody is interested.
  20. Attila Kovacs

    Patch 2 for RAD Studio 10.4 now available

    The Oracle: What’s really going to bake your noodle later on is, would you still have broken it if I hadn’t said anything.
  21. Attila Kovacs

    ctrl+b on the welcome page

    I'm wondering if you are also getting a big fat AV for ctrl-b on the welcome page if parnassus is installed. 10.1U2
  22. Attila Kovacs

    Help with string extraction function

    @Mike Torrettinni And the same code can perform differently on different CPU's. Because the "integer iterator" does nothing else just calculates the pointer + i over and over. So basically it's a shortcut.
  23. Attila Kovacs

    Help with string extraction function

    @Stefan Glienke thx, updated. Strange, with 10.1U2 it's definitely much faster if not storing it. O+ W- asm: ec4.txt
×