On 22.04.16 9:53, Semyon Sadetsky wrote:
On 4/21/2016 10:48 PM, Sergey Bylokhov wrote:
Hi, Semyon.
The new code in the CallProxyDefWindowProc() became similar to the code
in old jdk. In jdk5 and jdk6 the "::DefWindowProc()" was used, and
it seems was replaced by "ComCtl32Util::GetInstance().DefWindowProc"
later, can you please check why it was done.
It was changed in JDK-6359035 which tried to make the code to following
some MS recommendations. I still see no issues related to the line of
code you've mentioned.
I do not think that we just follow some recommendation(and can freely
replace "ComCtl32Util:: to ::DefWindowProc), for example take a look to
[1] JDK-6743433. If we change this code in this fix we should provide
some similar evaluation.
[1] https://bugs.openjdk.java.net/browse/JDK-6743433
I did not remove the code back. Before JDK-8079595 the DefSubclassProc
function was called actually (see ComCtl32Util::DefWindowProc). This
function is not threadsafe and that was the root cause of the
JDK-8079595.
--
Best regards, Sergey.