2006/11/23, Gregory Shimansky <[EMAIL PROTECTED]>:
Geir Magnusson Jr. wrote:
>
>
> Gregory Shimansky wrote:
>> Hello
>>
>> Today I've found a bug (HARMONY-2271) which lead down to APR
>> implementation of getenv function on windows. I've looked at the APR
>> page and found that there is a new release 1.2.7. In drlvm we still
>> use 1.2.6.
>>
>> While the bug which I've found was apparently fixed after 1.2.7 was
>> released, we still some more patches (1 replaced file on linux, 3 on
>> windows) for APR in drlvm, some of the patches may be redundant now.
>>
>> Also some bugs which we still didn't find could be fixed. I know, some
>> may be added too :). But I prefer to be optimistic. We could at least
>> try to test APR 1.2.7 and remove patches which are no longer needed or
>> even outdated.
>
> That sounds like a good plan. Have we ever tried to offer our patches
> to APR to get them in main releases?
I've compared the files which we have patched in APR with what APR-1.2.7
has. The changes except for env.c which I've committed today are all in
threading. A lot of things are different in
include/arch/win32/apr_arch_thread_cond.h and locks/win32/thread_cond.c.
Gregory, the locks/win32/thread_cond.c was fixed in HARMONY-1519 on 4
Oct. The current patch is definitely more correct than the official
version (apparently based on the previous patch). Don't know who
submitted old patched to APR - Artem Aliev? At least he might have
more complete clue...
--
Alexey
I don't know how really correct they are (they could be a source for
threading bugs in drlvm too). I wouldn't try to submit this code without
strong understanding about what is changing and why.
On linux just one line is different from APR-1.2.7. I don't know which
issue caused this patch, and why apr_thread_yield apparently does
nothing on Linux on original APR-1.2.7.
--
Gregory