changes to fix Lazarus and FreePascal compilation issues. - #413
Conversation
norayr
commented
Mar 13, 2023
current git release wasn't compiling under Lazarus/fpc, so here is the fix. |
norayr
commented
Mar 13, 2023
norayr
commented
Mar 13, 2023
now it builds, i guess you did not test it with fpc for a long time, and it did not build without the fixes in this commit. i hope i did everything right. feel free to edit my code. |
pyscripter
commented
Mar 13, 2023
I see the issue. I just suggested some simplifications. |
norayr
commented
Mar 13, 2023
Yes, please suggest. Or you can apply the pull request and then apply your own improvements. |
norayr
commented
Mar 14, 2023
maybe I did not notice, where did you suggest some changes? |
norayr
commented
Mar 19, 2023
i guess you were doing code review and forgot to press 'submit review' button. |
| NewSize := Utf8ToUnicode(PUnicodeChar(Result), Cardinal(Size + 1), Buffer, Cardinal(Size)); | ||
| {$ELSE} | ||
| NewSize := Utf8ToUnicode(PChar(Result), Cardinal(Size + 1), Buffer, Cardinal(Size)); | ||
| {$ENDIF} |
There was a problem hiding this comment.
NewSize := Utf8ToUnicode(PWideChar(Result), Cardinal(Size + 1), Buffer, Cardinal(Size));
Would work both in Delphi and Fpc.
PUnicodeChar is an alias to PWideChar;
| {$ENDIF} | ||
| {$IFDEF FPC} | ||
| DelphiObject := TResourceStreamClass(DelphiObjectClass).Create(LHandle, String(LResName), PChar(String(LResType))) | ||
| {$ELSE} |
There was a problem hiding this comment.
DelphiObject := TResourceStreamClass(DelphiObjectClass).Create(LHandle, String(LResName), PChar(String(LResType)))
Should work in both fpc and Delphi.
| {$ENDIF} | ||
| {$IFDEF FPC} | ||
| DelphiObject := TResourceStreamClass(DelphiObjectClass).CreateFromID(LHandle, LResId, PChar(String(LResType))); | ||
| {$ELSE} |
| PyType: PPyTypeObject; | ||
| {$IFDEF FPC} | ||
| i: longint; | ||
| {$ENDIF} |
There was a problem hiding this comment.
i: Integer
should be in the {$ELSE} part of the the IFDEF below.
There was a problem hiding this comment.
I believe I addressed all the comments.
Thank you for those. You can take a look at another commit.
There was a problem hiding this comment.
I meant in the ELSE part of EXTENDED_RTTI! You don't need IFDEF FPC. And use Integer instead of longint.
There was a problem hiding this comment.
oh, now I see.
Thank you for comments and your patience.
Now I did it, but PR contains 3 commits.
Do you want me to figure the way to change it for 1 commit?
There was a problem hiding this comment.
so, do you like the current state of it?
would you merge? or should i change something else?
pyscripter
commented
Mar 20, 2023
Indeed. |
norayr
commented
Apr 27, 2023
hey, sorry for pinging you again. but would you like to merge it? or did you solve it yourself already? |
pyscripter
commented
Apr 27, 2023
Sorry for the delay. Very busy right now. I will deal with PR in a couple of weeks. |


No description provided.