| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
@vmuriart will this cherry pick include @dmitriyse in the commit history? |
Sorry, something went wrong.
|
I didn't cherry pick this commit in this case. He had re-organized/re-structured his files and was going to be a headache to cherry pick. I gave him credit on the commit message though. @dmitriyse are you ok w this? |
Sorry, something went wrong.
|
You can just do a git commit --amend --author "Something <something>" to give credit :) Could you or @dmitriyse explain why this fixes the issue? |
Sorry, something went wrong.
|
@filmor good call. Fixed and pushed. |
Sorry, something went wrong.
Codecov Report
@@ Coverage Diff @@
## master #399 +/- ##
==========================================
- Coverage 63.53% 63.45% -0.09%
==========================================
Files 60 60
Lines 5222 5257 +35
Branches 858 860 +2
==========================================
+ Hits 3318 3336 +18
- Misses 1684 1701 +17
Partials 220 220
Continue to review full report at Codecov.
|
Sorry, something went wrong.
|
@filmor I'll let @dmitriyse since he figured it out. My best educated guess is that the encoding was breaking for UCS4 and thus why we only saw the issue on linux. |
Sorry, something went wrong.
|
This code definitely needs comments on how these unmanaged strings are manually built. I'm surprised that it has to be so convoluted. Why can't we just use PyString_* methods? |
Sorry, something went wrong.
|
@denfromufa I have some work to refactor that logic. We have about 3 different variations of this same thing, each variation being used atleast twice. When I tried refactoring earlier, I was having issues that either the memory was being freed-up too early or never at all. We do the same thing on PyString_* as this cuz of the same memory life issue. I settled for this pr until I get the memory-life tuned just right. |
Sorry, something went wrong.
|
@vmuriart can you point to "3 different variations of this same thing, each variation being used atleast twice."? |
Sorry, something went wrong.
Sorry, something went wrong.
|
@filmor I took a closer look at the issue and I was on the right track. Currently we don't distinguish between the two different encoding, and fails to work on UCS4. This implementation manually marshals the string array and applies to correct encoding passing it to python. I'm working on an ICustomMarshaler to replace all instances that were are doing this, but I would prefer to have time one in the git-history so that we can fall-back to in case the ICustomMarshaler causes issues. that being said, @filmor @denfromufa any objections to merging this then? |
Sorry, something went wrong.
|
Hi! There is a problem with ICustomMarshaler - it's not supported by CoreCLR. Please consider to use two Methods solution: First Method - is interop; Second method - is interop wrapper with marshaling inside. |
Sorry, something went wrong.
|
Ups, i am worng. |
Sorry, something went wrong.
|
@dmitriyse your first comment scared me. You posted it just has I was finishing writing the 2nd ICustomMarshaler. |
Sorry, something went wrong.
Based on @dmitriyse work on: dmitriyse@8a70f09
| Back | FazBrowse Home | New Git URL |
What does this implement/fix? Explain your changes.
Fix Py_Main & PySys_SetArgvEx execution on PY3/UCS4 (Linux).
Does this close any currently open issues?
N/A
Any other comments?
Based on @dmitriyse's work.
dmitriyse@8a70f09
Checklist
Check all those that are applicable and complete.