<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>142879</bug_id>
          
          <creation_ts>2015-03-19 14:20:15 -0700</creation_ts>
          <short_desc>[GTK] [Wayland] Build is broken on trunk</short_desc>
          <delta_ts>2015-06-04 03:57:58 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>136831</dependson>
          <blocked>81456</blocked>
    
    <blocked>115803</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Carlos Alberto Lopez Perez">clopez</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>gnome</cc>
    
    <cc>itoral</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1078633</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-03-19 14:20:15 -0700</bug_when>
    <thetext>I&apos;m trying to build WebKitGTK+ with Wayland support but I&apos;m unable to build it.

I have tried the following combinations:

1) Tools/Scripts/build-webkit --gtk --release --cmakeargs=&apos;-DENABLE_WAYLAND_TARGET=ON -DENABLE_X11_TARGET=ON  -DENABLE_PLUGIN_PROCESS_GTK2=ON  -DENABLE_ACCELERATED_2D_CANVAS=OFF&apos;
2) Tools/Scripts/build-webkit --gtk --release --cmakeargs=&apos;-DENABLE_WAYLAND_TARGET=ON -DENABLE_X11_TARGET=ON  -DENABLE_PLUGIN_PROCESS_GTK2=OFF -DENABLE_ACCELERATED_2D_CANVAS=OFF&apos;
3) Tools/Scripts/build-webkit --gtk --release --cmakeargs=&apos;-DENABLE_WAYLAND_TARGET=ON -DENABLE_X11_TARGET=OFF -DENABLE_PLUGIN_PROCESS_GTK2=OFF -DENABLE_ACCELERATED_2D_CANVAS=OFF&apos;

And I was unable to get it built.

I tried both using the jhbuild libraries (with the extra moduleset jhbuild-wayland.modules) and with my system libraries (Debian testing).

The first build error is:

./../Source/WebCore/platform/graphics/egl/GLContextEGL.cpp:70:33: error: no matching function for call to &apos;eglGetDisplay&apos;
            gSharedEGLDisplay = eglGetDisplay(WaylandDisplay::instance()-&gt;nativeDisplay());
                                ^~~~~~~~~~~~~
/usr/include/EGL/egl.h:251:19: note: candidate function not viable: cannot convert argument of incomplete type &apos;struct wl_display *&apos; to &apos;EGLNativeDisplayType&apos; (aka &apos;_XDisplay *&apos;)
       EGLDisplay eglGetDisplay(EGLNativeDisplayType display_id);
                  ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1078636</commentid>
    <comment_count>1</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2015-03-19 14:33:23 -0700</bug_when>
    <thetext>This specific error should be fixed by bug #136831.

Other relevant bugs are bugs #142875, #142876 and #142877.

#142877 disables accelerated compositing for now, but there&apos;s still one build failure due to improper GLContext creation in LayerTreeHostGtk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099125</commentid>
    <comment_count>2</comment_count>
      <attachid>254169</attachid>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-06-03 05:20:20 -0700</bug_when>
    <thetext>Created attachment 254169
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099129</commentid>
    <comment_count>3</comment_count>
      <attachid>254169</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-06-03 05:43:12 -0700</bug_when>
    <thetext>Comment on attachment 254169
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=254169&amp;action=review

&gt; Source/WebCore/ChangeLog:11
&gt; +        * PlatformGTK.cmake: When the Wayland target is enabled, its
&gt; +        sources should be included in WebCore list.

This is not what you are doing, you are moving the wayland sources from WebCorePlatformGTK to WebCore_SOURCES, which is probably correct because the wayland sources don&apos;t use GTK+, but why does it fail to build when wayland sources are in WebCorePlatformGTK?

&gt; Source/WebCore/ChangeLog:19
&gt; +        (WebCore::PlatformDisplayWayland::create): Use the default value
&gt; +        for the Wayland socket.

Why?

&gt; Source/WebCore/ChangeLog:24
&gt; +        * platform/graphics/wayland/PlatformDisplayWayland.h: Remove dead code.

Is dead code causing build failure?

&gt; Source/WebCore/platform/graphics/PlatformDisplay.cpp:128
&gt; +    if (m_eglDisplayInitialized)
&gt; +        return;

This si not needed, this is only called from PlatformDisplay::eglDisplay() that already does that check.

&gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp:58
&gt; -    struct wl_display* wlDisplay = wl_display_connect(&quot;webkitgtk-wayland-compositor-socket&quot;);
&gt; +    struct wl_display* wlDisplay = wl_display_connect(0);

Why was this wrong?

&gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.h:59
&gt; -    Type type() const override { return PlatformDisplay::Type::Wayland; }
&gt; +    virtual Type type() const override { return PlatformDisplay::Type::Wayland; }

I don&apos;t think this is needed, does this cause a build failure?

&gt; Source/cmake/OptionsGTK.cmake:-85
&gt; -# FIXME: Should be possible to build with support for both X11 and Wayland.
&gt; -WEBKIT_OPTION_CONFLICT(ENABLE_WAYLAND_TARGET ENABLE_X11_TARGET)
&gt; -

I seems to me that this goes beyond the build fix

&gt; ChangeLog:13
&gt; +        * Source/cmake/OptionsGTK.cmake: Remove cmake conflict for building
&gt; +        at the same time the X11 and Wayland targets that r183491 added.
&gt; +        Building both was previously supported and continues to be.
&gt; +        When running it, the Wayland target will be used if we are running
&gt; +        inside a Wayland compositor (Weston for example) and our environment
&gt; +        don&apos;t has set the DISPLAY variable.

I think this should be a separate bug, since this is about fixing the build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099131</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-06-03 06:15:33 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 254169 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=254169&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        * PlatformGTK.cmake: When the Wayland target is enabled, its
&gt; &gt; +        sources should be included in WebCore list.
&gt; 
&gt; This is not what you are doing, you are moving the wayland sources from
&gt; WebCorePlatformGTK to WebCore_SOURCES, which is probably correct because the
&gt; wayland sources don&apos;t use GTK+, but why does it fail to build when wayland
&gt; sources are in WebCorePlatformGTK?
&gt; 

It gave me build errors at some point, but it seems not longer fails if
I revert that change.
Do you think I should revert it?




&gt; &gt; Source/WebCore/ChangeLog:19
&gt; &gt; +        (WebCore::PlatformDisplayWayland::create): Use the default value
&gt; &gt; +        for the Wayland socket.
&gt; 
&gt; Why?
&gt; 
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp:58
&gt; &gt; -    struct wl_display* wlDisplay = wl_display_connect(&quot;webkitgtk-wayland-compositor-socket&quot;);
&gt; &gt; +    struct wl_display* wlDisplay = wl_display_connect(0);
&gt; 
&gt; Why was this wrong?
&gt; 
Without that, the MiniBrowser will crash on my Weston test environment.
This is the backtrace:

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f7a8099fb3e in webkitWebViewBaseCreateWebPage(_WebKitWebViewBase*, WebKit::WebProcessPool*, WebKit::WebPreferences*, WebKit::WebPageGroup*, WebKit::WebUserContentControllerProxy*, WebKit::WebPageProxy*) () from /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
[...]
Thread 1 (Thread 0x7f7a8237c9c0 (LWP 3916)):
#0  0x00007f7a8099fb3e in webkitWebViewBaseCreateWebPage(_WebKitWebViewBase*, WebKit::WebProcessPool*, WebKit::WebPreferences*, WebKit::WebPageGroup*, WebKit::WebUserContentControllerProxy*, WebKit::WebPageProxy*) () from /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#1  0x00007f7a80990772 in webkitWebContextCreatePageForWebView(_WebKitWebContext*, _WebKitWebView*, _WebKitUserContentManager*, _WebKitWebView*) () from /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#2  0x00007f7a8099d105 in webkitWebViewConstructed(_GObject*) () from /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#3  0x00007f7a7d9a29d4 in g_object_new_internal (class=0x7f7a821e1218 &lt;WebCore::PlatformDisplay::sharedDisplay()::onceFlag&gt;, class@entry=0xddcc00, params=0x81, params@entry=0x7fff1103ca60, n_params=1) at /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:1814
#4  0x00007f7a7d9a4675 in g_object_new_valist (object_type=object_type@entry=14843504, first_property_name=first_property_name@entry=0x7f7a819c62c6 &lt;.L.str5&gt; &quot;web-context&quot;, var_args=var_args@entry=0x7fff1103cbb0) at /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:2034
#5  0x00007f7a7d9a49b1 in g_object_new (object_type=14843504, first_property_name=0x7f7a819c62c6 &lt;.L.str5&gt; &quot;web-context&quot;) at /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:1617
#6  0x00007f7a8099775a in webkit_web_view_new_with_context () from /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#7  0x0000000000410754 in createBrowserWindow ()
#8  0x0000000000410608 in main ()


Not sure why this change is needed or not, but without it the Minibrowser crashes for me.





&gt; &gt; Source/WebCore/ChangeLog:24
&gt; &gt; +        * platform/graphics/wayland/PlatformDisplayWayland.h: Remove dead code.
&gt; 
&gt; Is dead code causing build failure?
&gt; 

Yes, because it gets compiled even if is not used.

[9/51] Linking CXX shared library lib/libwebkit2gtk-4.0.so.37.8.0
FAILED: : &amp;&amp; /usr/lib/ccache/clang++  -fPIC  -std=c++11 -fcolor-diagnostics -Qunused-arguments -O3 -DNDEBUG -fno-exceptions -fno-strict-aliasing -fno-rtti  -Wl,--no-undefined   -fuse-ld=gold -Wl,--disable-new-dtags -fuse-ld=gold -Wl,--disable-new-dtags -shared -Wl,-soname,libwebkit2gtk-4.0.so.37 -o lib/libwebkit2gtk-4.0.so.37.8.0 @CMakeFiles/WebKit2.rsp  &amp;&amp; :
lib/libWebCorePlatformGTK.a(lib/../Source/WebCore/CMakeFiles/WebCorePlatformGTK.dir/platform/graphics/wayland/PlatformDisplayWayland.cpp.o):/home/clopez/webkit/.ccache/tmp/PlatformDi.tmp.trinity.32422.ii:function WebCore::PlatformDisplayWayland::createSharingGLContext(): error: undefined reference to &apos;WebCore::GLContextEGL::createWindowContext(wl_egl_window*, WebCore::GLContext*)&apos;
clang: error: linker command failed with exit code 1 (use -v to see invocation)







&gt; &gt; Source/WebCore/platform/graphics/PlatformDisplay.cpp:128
&gt; &gt; +    if (m_eglDisplayInitialized)
&gt; &gt; +        return;
&gt; 
&gt; This si not needed, this is only called from PlatformDisplay::eglDisplay()
&gt; that already does that check.

I was suspecting something like that, but I wasn&apos;t sure and maybe somebody
calls this function from another site on the future so I thought that adding
that check was worth.

Do you think I should remove it?





&gt; &gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.h:59
&gt; &gt; -    Type type() const override { return PlatformDisplay::Type::Wayland; }
&gt; &gt; +    virtual Type type() const override { return PlatformDisplay::Type::Wayland; }
&gt; 
&gt; I don&apos;t think this is needed, does this cause a build failure?
&gt; 
No it don&apos;t causes it, but the other methods are set as Virtual. Check:

$ grep -r &apos; Type type() const override&apos; Source/WebCore/platform/graphics

Do you think is not right the change?



&gt; &gt; Source/cmake/OptionsGTK.cmake:-85
&gt; &gt; -# FIXME: Should be possible to build with support for both X11 and Wayland.
&gt; &gt; -WEBKIT_OPTION_CONFLICT(ENABLE_WAYLAND_TARGET ENABLE_X11_TARGET)
&gt; &gt; -
&gt; 
&gt; I seems to me that this goes beyond the build fix
&gt; 
&gt; &gt; ChangeLog:13
&gt; &gt; +        * Source/cmake/OptionsGTK.cmake: Remove cmake conflict for building
&gt; &gt; +        at the same time the X11 and Wayland targets that r183491 added.
&gt; &gt; +        Building both was previously supported and continues to be.
&gt; &gt; +        When running it, the Wayland target will be used if we are running
&gt; &gt; +        inside a Wayland compositor (Weston for example) and our environment
&gt; &gt; +        don&apos;t has set the DISPLAY variable.
&gt; 
&gt; I think this should be a separate bug, since this is about fixing the build.

I&apos;m fixing the build both for ENABLE_WAYLAND_TARGET alone and for 
ENABLE_X11_TARGET and ENABLE_WAYLAND_TARGET at the same time.

I can only fix for ENABLE_WAYLAND_TARGET alone and after that open another
bug to fix it for both at the same time if you think is worth.

Do you think is worth to do this in a new bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099132</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-06-03 06:40:10 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Comment on attachment 254169 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=254169&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; &gt; +        * PlatformGTK.cmake: When the Wayland target is enabled, its
&gt; &gt; &gt; +        sources should be included in WebCore list.
&gt; &gt; 
&gt; &gt; This is not what you are doing, you are moving the wayland sources from
&gt; &gt; WebCorePlatformGTK to WebCore_SOURCES, which is probably correct because the
&gt; &gt; wayland sources don&apos;t use GTK+, but why does it fail to build when wayland
&gt; &gt; sources are in WebCorePlatformGTK?
&gt; &gt; 
&gt; 
&gt; It gave me build errors at some point, but it seems not longer fails if
&gt; I revert that change.
&gt; Do you think I should revert it?
&gt;

If those sources don&apos;t use GTK+ at all, they should be moved to WebCore_SOURCES, but in a different bug/patch. If you don&apos;t want to open a new bug land it with rs=me.

&gt; 
&gt; 
&gt; 
&gt; &gt; &gt; Source/WebCore/ChangeLog:19
&gt; &gt; &gt; +        (WebCore::PlatformDisplayWayland::create): Use the default value
&gt; &gt; &gt; +        for the Wayland socket.
&gt; &gt; 
&gt; &gt; Why?
&gt; &gt; 
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp:58
&gt; &gt; &gt; -    struct wl_display* wlDisplay = wl_display_connect(&quot;webkitgtk-wayland-compositor-socket&quot;);
&gt; &gt; &gt; +    struct wl_display* wlDisplay = wl_display_connect(0);
&gt; &gt; 
&gt; &gt; Why was this wrong?
&gt; &gt; 
&gt; Without that, the MiniBrowser will crash on my Weston test environment.
&gt; This is the backtrace:
&gt; 
&gt; Program terminated with signal SIGSEGV, Segmentation fault.
&gt; #0  0x00007f7a8099fb3e in
&gt; webkitWebViewBaseCreateWebPage(_WebKitWebViewBase*, WebKit::WebProcessPool*,
&gt; WebKit::WebPreferences*, WebKit::WebPageGroup*,
&gt; WebKit::WebUserContentControllerProxy*, WebKit::WebPageProxy*) () from
&gt; /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
&gt; [...]
&gt; Thread 1 (Thread 0x7f7a8237c9c0 (LWP 3916)):
&gt; #0  0x00007f7a8099fb3e in
&gt; webkitWebViewBaseCreateWebPage(_WebKitWebViewBase*, WebKit::WebProcessPool*,
&gt; WebKit::WebPreferences*, WebKit::WebPageGroup*,
&gt; WebKit::WebUserContentControllerProxy*, WebKit::WebPageProxy*) () from
&gt; /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
&gt; #1  0x00007f7a80990772 in
&gt; webkitWebContextCreatePageForWebView(_WebKitWebContext*, _WebKitWebView*,
&gt; _WebKitUserContentManager*, _WebKitWebView*) () from
&gt; /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
&gt; #2  0x00007f7a8099d105 in webkitWebViewConstructed(_GObject*) () from
&gt; /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
&gt; #3  0x00007f7a7d9a29d4 in g_object_new_internal (class=0x7f7a821e1218
&gt; &lt;WebCore::PlatformDisplay::sharedDisplay()::onceFlag&gt;, class@entry=0xddcc00,
&gt; params=0x81, params@entry=0x7fff1103ca60, n_params=1) at
&gt; /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:1814
&gt; #4  0x00007f7a7d9a4675 in g_object_new_valist
&gt; (object_type=object_type@entry=14843504,
&gt; first_property_name=first_property_name@entry=0x7f7a819c62c6 &lt;.L.str5&gt;
&gt; &quot;web-context&quot;, var_args=var_args@entry=0x7fff1103cbb0) at
&gt; /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:2034
&gt; #5  0x00007f7a7d9a49b1 in g_object_new (object_type=14843504,
&gt; first_property_name=0x7f7a819c62c6 &lt;.L.str5&gt; &quot;web-context&quot;) at
&gt; /tmp/buildd/glib2.0-2.42.1/./gobject/gobject.c:1617
&gt; #6  0x00007f7a8099775a in webkit_web_view_new_with_context () from
&gt; /home/clopez/webkit/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
&gt; #7  0x0000000000410754 in createBrowserWindow ()
&gt; #8  0x0000000000410608 in main ()
&gt; 
&gt; 
&gt; Not sure why this change is needed or not, but without it the Minibrowser
&gt; crashes for me.
&gt; 

We need to explain in the ChangeLog why we do the changes, this is a bug about fixing the build. This should be moved to a new bug about crashes when using wayland, so that wayland experts can discuss this crash, and the best wat to solve it.

&gt; 
&gt; 
&gt; 
&gt; &gt; &gt; Source/WebCore/ChangeLog:24
&gt; &gt; &gt; +        * platform/graphics/wayland/PlatformDisplayWayland.h: Remove dead code.
&gt; &gt; 
&gt; &gt; Is dead code causing build failure?
&gt; &gt; 
&gt; 
&gt; Yes, because it gets compiled even if is not used.
&gt; 
&gt; [9/51] Linking CXX shared library lib/libwebkit2gtk-4.0.so.37.8.0
&gt; FAILED: : &amp;&amp; /usr/lib/ccache/clang++  -fPIC  -std=c++11 -fcolor-diagnostics
&gt; -Qunused-arguments -O3 -DNDEBUG -fno-exceptions -fno-strict-aliasing
&gt; -fno-rtti  -Wl,--no-undefined   -fuse-ld=gold -Wl,--disable-new-dtags
&gt; -fuse-ld=gold -Wl,--disable-new-dtags -shared
&gt; -Wl,-soname,libwebkit2gtk-4.0.so.37 -o lib/libwebkit2gtk-4.0.so.37.8.0
&gt; @CMakeFiles/WebKit2.rsp  &amp;&amp; :
&gt; lib/libWebCorePlatformGTK.a(lib/../Source/WebCore/CMakeFiles/
&gt; WebCorePlatformGTK.dir/platform/graphics/wayland/PlatformDisplayWayland.cpp.
&gt; o):/home/clopez/webkit/.ccache/tmp/PlatformDi.tmp.trinity.32422.ii:function
&gt; WebCore::PlatformDisplayWayland::createSharingGLContext(): error: undefined
&gt; reference to &apos;WebCore::GLContextEGL::createWindowContext(wl_egl_window*,
&gt; WebCore::GLContext*)&apos;
&gt; clang: error: linker command failed with exit code 1 (use -v to see
&gt; invocation)
&gt; 
&gt; 
&gt;

Ok, let&apos;s remove it for now, if it&apos;s eventually needed, it will be added again and fixed to build.

&gt; 
&gt; 
&gt; 
&gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/PlatformDisplay.cpp:128
&gt; &gt; &gt; +    if (m_eglDisplayInitialized)
&gt; &gt; &gt; +        return;
&gt; &gt; 
&gt; &gt; This si not needed, this is only called from PlatformDisplay::eglDisplay()
&gt; &gt; that already does that check.
&gt; 
&gt; I was suspecting something like that, but I wasn&apos;t sure and maybe somebody
&gt; calls this function from another site on the future so I thought that adding
&gt; that check was worth.

That method is protected so only derived classes can call it. The public users should use eglDisplay(), that&apos;s why the check is there.

&gt; Do you think I should remove it?
&gt;

Yes, please, also it doesn&apos;t fix the build as the bug title claims.

&gt; 
&gt; 
&gt; 
&gt; 
&gt; &gt; &gt; Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.h:59
&gt; &gt; &gt; -    Type type() const override { return PlatformDisplay::Type::Wayland; }
&gt; &gt; &gt; +    virtual Type type() const override { return PlatformDisplay::Type::Wayland; }
&gt; &gt; 
&gt; &gt; I don&apos;t think this is needed, does this cause a build failure?
&gt; &gt; 
&gt; No it don&apos;t causes it, but the other methods are set as Virtual. Check:
&gt; 
&gt; $ grep -r &apos; Type type() const override&apos; Source/WebCore/platform/graphics
&gt; 
&gt; Do you think is not right the change?

Again, even if the change is correct, it&apos;s unrelated to this bug.

&gt; 
&gt; 
&gt; &gt; &gt; Source/cmake/OptionsGTK.cmake:-85
&gt; &gt; &gt; -# FIXME: Should be possible to build with support for both X11 and Wayland.
&gt; &gt; &gt; -WEBKIT_OPTION_CONFLICT(ENABLE_WAYLAND_TARGET ENABLE_X11_TARGET)
&gt; &gt; &gt; -
&gt; &gt; 
&gt; &gt; I seems to me that this goes beyond the build fix
&gt; &gt; 
&gt; &gt; &gt; ChangeLog:13
&gt; &gt; &gt; +        * Source/cmake/OptionsGTK.cmake: Remove cmake conflict for building
&gt; &gt; &gt; +        at the same time the X11 and Wayland targets that r183491 added.
&gt; &gt; &gt; +        Building both was previously supported and continues to be.
&gt; &gt; &gt; +        When running it, the Wayland target will be used if we are running
&gt; &gt; &gt; +        inside a Wayland compositor (Weston for example) and our environment
&gt; &gt; &gt; +        don&apos;t has set the DISPLAY variable.
&gt; &gt; 
&gt; &gt; I think this should be a separate bug, since this is about fixing the build.
&gt; 
&gt; I&apos;m fixing the build both for ENABLE_WAYLAND_TARGET alone and for 
&gt; ENABLE_X11_TARGET and ENABLE_WAYLAND_TARGET at the same time.
&gt; 
&gt; I can only fix for ENABLE_WAYLAND_TARGET alone and after that open another
&gt; bug to fix it for both at the same time if you think is worth.
&gt; 
&gt; Do you think is worth to do this in a new bug?

Indeed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099181</commentid>
    <comment_count>6</comment_count>
      <attachid>254185</attachid>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-06-03 10:15:43 -0700</bug_when>
    <thetext>Created attachment 254185
Patch

Minimal patch for fixing the build with Wayland target enabled. Compared to the previous patch, this one dont removes the previous dead code that was failing before to build. Instead it makes it build by defining GLNativeWindowType to the one that Wayland expects (change picked from patch on bug 136831). Not sure if this approach is better. Let me know</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099182</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-06-03 10:17:58 -0700</bug_when>
    <thetext>Attachment 254185 did not pass style-queue:


ERROR: Source/WebCore/platform/graphics/GLContext.h:31:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099428</commentid>
    <comment_count>8</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-06-03 23:36:31 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Created attachment 254185 [details]
&gt; Patch
&gt; 
&gt; Minimal patch for fixing the build with Wayland target enabled. Compared to
&gt; the previous patch, this one dont removes the previous dead code that was
&gt; failing before to build. Instead it makes it build by defining
&gt; GLNativeWindowType to the one that Wayland expects (change picked from patch
&gt; on bug 136831). Not sure if this approach is better. Let me know

Yes, this approach is better and makes my life easier when backporting patches to stable branches, for example. If I see a commit that claims to fix the build but ends up doing more things, I would need to check the contents and decide what to merge individually. If the commit actually only fixes the build I can just cherry-pick it. But please, use new bugs for fixing the other issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099433</commentid>
    <comment_count>9</comment_count>
      <attachid>254185</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-06-03 23:39:16 -0700</bug_when>
    <thetext>Comment on attachment 254185
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=254185&amp;action=review

&gt; Source/WebCore/platform/graphics/PlatformDisplay.cpp:48
&gt; +#if PLATFORM(WAYLAND) &amp;&amp; ! defined(GTK_API_VERSION_2)

Extra space after !

&gt; Source/WebKit2/WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:87
&gt; -        m_context = GLContext::createContextForWindow(m_layerTreeContext.contextID, GLContext::sharingContext());
&gt; +        m_context = GLContext::createContextForWindow((GLNativeWindowType) m_layerTreeContext.contextID, GLContext::sharingContext());

Use a C++ cast here, please.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099474</commentid>
    <comment_count>10</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-06-04 03:56:04 -0700</bug_when>
    <thetext>Committed r185198: &lt;http://trac.webkit.org/changeset/185198&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>254169</attachid>
            <date>2015-06-03 05:20:20 -0700</date>
            <delta_ts>2015-06-03 10:15:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142879-20150603141959.patch</filename>
            <type>text/plain</type>
            <size>11831</size>
            <attacher name="Carlos Alberto Lopez Perez">clopez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg1MTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzFlODUzM2ViNzA1MjIx
NjkxMWJmMmU1YTJiMGFkODlmZmY0MDExYi4uMDc2Y2FmZDc5NzQ5Mzg2YzEyMTFhZTkxOGNhMjM2
ODk4OTY0NjNiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDE1LTA2LTAzICBDYXJs
b3MgQWxiZXJ0byBMb3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtH
VEtdIFtXYXlsYW5kXSBCdWlsZCBpcyBicm9rZW4gb24gdHJ1bmsKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0Mjg3OQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZpb3Ig
Y2hhbmdlcy4KKworICAgICAgICAqIFBsYXRmb3JtR1RLLmNtYWtlOiBXaGVuIHRoZSBXYXlsYW5k
IHRhcmdldCBpcyBlbmFibGVkLCBpdHMKKyAgICAgICAgc291cmNlcyBzaG91bGQgYmUgaW5jbHVk
ZWQgaW4gV2ViQ29yZSBsaXN0LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3Jt
RGlzcGxheS5jcHA6IEZpeCB0aGUgaW5jbHVkZSBvZiBHREsKKyAgICAgICAgaGVhZGVycyBmb3Ig
dGhlIGRpZmZlcmVudCB0YXJnZXRzLgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5
Ojppbml0aWFsaXplRUdMRGlzcGxheSk6IEVuc3VyZSB0aGF0IHdlCisgICAgICAgICBkb24ndCB0
cnkgdG8gaW5pdGlhbGl6ZSB0aGUgRUdMIGRpc3BsYXkgbW9yZSB0aGFuIG9uY2UuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9QbGF0Zm9ybURpc3BsYXlXYXlsYW5kLmNwcDog
UmVtb3ZlIGRlYWQgY29kZS4KKyAgICAgICAgSXMgbm90IHVzZWQgYW55d2hlcmUgYW5kIHdpbGwg
Y2F1c2UgYnVpbGQgZmFpbHVyZXMuCisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9ybURpc3BsYXlX
YXlsYW5kOjpjcmVhdGUpOiBVc2UgdGhlIGRlZmF1bHQgdmFsdWUKKyAgICAgICAgZm9yIHRoZSBX
YXlsYW5kIHNvY2tldC4KKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheVdheWxhbmQ6
Omdsb2JhbENhbGxiYWNrKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtRGlz
cGxheVdheWxhbmQ6On5QbGF0Zm9ybURpc3BsYXlXYXlsYW5kKTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OlBsYXRmb3JtRGlzcGxheVdheWxhbmQ6OmNyZWF0ZVN1cmZhY2UpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1EaXNwbGF5V2F5bGFuZDo6Y3JlYXRlU2hhcmlu
Z0dMQ29udGV4dCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFu
ZC9QbGF0Zm9ybURpc3BsYXlXYXlsYW5kLmg6IFJlbW92ZSBkZWFkIGNvZGUuCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5jcHA6IEZpeCB0aGUgYnVp
bGQgZm9yCisgICAgICAgIHRoZSB3YXlsYW5kIHRhcmdldCBhZnRlciByMTgzNzMxLgorICAgICAg
ICAoV2ViQ29yZTo6V2F5bGFuZFN1cmZhY2U6On5XYXlsYW5kU3VyZmFjZSk6IEZpeCBhZnRlciBy
MTgzNzMxLgorICAgICAgICAoV2ViQ29yZTo6V2F5bGFuZFN1cmZhY2U6OmNyZWF0ZUdMQ29udGV4
dCk6IERlbGV0ZWQuIFJlbW92ZSBkZWFkIGNvZGUuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5oOgorCiAyMDE1LTA2LTAzICBYYWJpZXIgUm9kcmln
dWV6IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+IGFuZCBZb3Vlbm4gRmFibGV0IDx5b3Vl
bm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KIAogICAgICAgICBbU3RyZWFtcyBBUEldIFJlYWRhYmxl
U3RyZWFtUmVhZGVyOjpjbG9zZWQoKSBzaG91bGQgYmUgY2FsbGVkIG9uY2UgYnkgYmluZGluZyBj
b2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUdUSy5jbWFrZSBiL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCmluZGV4IGIyNjA5MmQ2M2IwNThkMTgyOTc2YWQx
MTE4ZTAxOWMxYjYxY2NjYzcuLjFmM2UyNDVmZjdmNmM5MWU5ZjA0OThjMDMyNmM0ZDQwZGEyNDM3
ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1BsYXRmb3JtR1RLLmNtYWtlCkBAIC00NzIsNyArNDcyLDcgQEAgYWRkX2N1
c3RvbV9jb21tYW5kKAogKQogCiBpZiAoRU5BQkxFX1dBWUxBTkRfVEFSR0VUKQotICAgIGxpc3Qo
QVBQRU5EIFdlYkNvcmVQbGF0Zm9ybUdUS19TT1VSQ0VTCisgICAgbGlzdChBUFBFTkQgV2ViQ29y
ZV9TT1VSQ0VTCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvUGxhdGZvcm1EaXNw
bGF5V2F5bGFuZC5jcHAKICAgICAgICAgcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5k
RXZlbnRTb3VyY2UuY3BwCiAgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvV2F5bGFu
ZFN1cmZhY2UuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9QbGF0Zm9ybURpc3BsYXkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
UGxhdGZvcm1EaXNwbGF5LmNwcAppbmRleCA1ODNlNzVmNWEwYzQ4YmZmNTUzNmViZDI0MDdkNzNm
MjcwMzQ2MWUxLi42YzMyZTI5Y2RkNThjYWRlNzg4N2UxYWZmNzA0MGRmODJhMjlkNDJhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybURpc3BsYXku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3JtRGlzcGxh
eS5jcHAKQEAgLTQyLDggKzQyLDEzIEBACiAjZW5kaWYKIAogI2lmIFBMQVRGT1JNKEdUSykKKyNp
ZiBQTEFURk9STShYMTEpCiAjaW5jbHVkZSA8Z2RrL2dka3guaD4KICNlbmRpZgorI2lmIFBMQVRG
T1JNKFdBWUxBTkQpICYmICEgZGVmaW5lZChHVEtfQVBJX1ZFUlNJT05fMikKKyNpbmNsdWRlIDxn
ZGsvZ2Rrd2F5bGFuZC5oPgorI2VuZGlmCisjZW5kaWYgLy8gUExBVEZPUk0oR1RLKQogCiAjaWYg
UExBVEZPUk0oRUZMKSAmJiBkZWZpbmVkKEhBVkVfRUNPUkVfWCkKICNpbmNsdWRlIDxFY29yZV9Y
Lmg+CkBAIC0xMTksNiArMTI0LDggQEAgRUdMRGlzcGxheSBQbGF0Zm9ybURpc3BsYXk6OmVnbERp
c3BsYXkoKSBjb25zdAogCiB2b2lkIFBsYXRmb3JtRGlzcGxheTo6aW5pdGlhbGl6ZUVHTERpc3Bs
YXkoKQogeworICAgIGlmIChtX2VnbERpc3BsYXlJbml0aWFsaXplZCkKKyAgICAgICAgcmV0dXJu
OwogICAgIG1fZWdsRGlzcGxheUluaXRpYWxpemVkID0gdHJ1ZTsKIAogICAgIGlmIChtX2VnbERp
c3BsYXkgPT0gRUdMX05PX0RJU1BMQVkpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvUGxhdGZvcm1EaXNwbGF5V2F5bGFuZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93YXlsYW5kL1BsYXRmb3JtRGlzcGxheVdheWxh
bmQuY3BwCmluZGV4IDg4OGIyNTM1MDQyYzJiYzRhZGRkZTAxM2Q0ZmNmZGM3Mjc0YjMxZmEuLjM5
NjZlM2RhMjVhZjFhNDFmMzlmZmJkZjRhMTk1ZDM1Y2RkMTUxYWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvUGxhdGZvcm1EaXNwbGF5V2F5bGFu
ZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9QbGF0
Zm9ybURpc3BsYXlXYXlsYW5kLmNwcApAQCAtNDUsOCArNDUsNiBAQCB2b2lkIFBsYXRmb3JtRGlz
cGxheVdheWxhbmQ6Omdsb2JhbENhbGxiYWNrKHZvaWQqIGRhdGEsIHN0cnVjdCB3bF9yZWdpc3Ry
eSogcmVnaQogICAgIGF1dG8gZGlzcGxheSA9IHN0YXRpY19jYXN0PFBsYXRmb3JtRGlzcGxheVdh
eWxhbmQqPihkYXRhKTsKICAgICBpZiAoIXN0ZDo6c3RyY21wKGludGVyZmFjZSwgIndsX2NvbXBv
c2l0b3IiKSkKICAgICAgICAgZGlzcGxheS0+bV9jb21wb3NpdG9yID0gc3RhdGljX2Nhc3Q8c3Ry
dWN0IHdsX2NvbXBvc2l0b3IqPih3bF9yZWdpc3RyeV9iaW5kKHJlZ2lzdHJ5LCBuYW1lLCAmd2xf
Y29tcG9zaXRvcl9pbnRlcmZhY2UsIDEpKTsKLSAgICBlbHNlIGlmICghc3RkOjpzdHJjbXAoaW50
ZXJmYWNlLCAid2xfd2Via2l0Z3RrIikpCi0gICAgICAgIGRpc3BsYXktPm1fd2Via2l0Z3RrID0g
c3RhdGljX2Nhc3Q8c3RydWN0IHdsX3dlYmtpdGd0ayo+KHdsX3JlZ2lzdHJ5X2JpbmQocmVnaXN0
cnksIG5hbWUsICZ3bF93ZWJraXRndGtfaW50ZXJmYWNlLCAxKSk7CiB9CiAKIHZvaWQgUGxhdGZv
cm1EaXNwbGF5V2F5bGFuZDo6Z2xvYmFsUmVtb3ZlQ2FsbGJhY2sodm9pZCosIHN0cnVjdCB3bF9y
ZWdpc3RyeSosIHVpbnQzMl90KQpAQCAtNTcsNyArNTUsNyBAQCB2b2lkIFBsYXRmb3JtRGlzcGxh
eVdheWxhbmQ6Omdsb2JhbFJlbW92ZUNhbGxiYWNrKHZvaWQqLCBzdHJ1Y3Qgd2xfcmVnaXN0cnkq
LCB1aQogCiBzdGQ6OnVuaXF1ZV9wdHI8UGxhdGZvcm1EaXNwbGF5V2F5bGFuZD4gUGxhdGZvcm1E
aXNwbGF5V2F5bGFuZDo6Y3JlYXRlKCkKIHsKLSAgICBzdHJ1Y3Qgd2xfZGlzcGxheSogd2xEaXNw
bGF5ID0gd2xfZGlzcGxheV9jb25uZWN0KCJ3ZWJraXRndGstd2F5bGFuZC1jb21wb3NpdG9yLXNv
Y2tldCIpOworICAgIHN0cnVjdCB3bF9kaXNwbGF5KiB3bERpc3BsYXkgPSB3bF9kaXNwbGF5X2Nv
bm5lY3QoMCk7CiAgICAgaWYgKCF3bERpc3BsYXkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwog
CkBAIC0xMDIsOCArMTAwLDYgQEAgUGxhdGZvcm1EaXNwbGF5V2F5bGFuZDo6UGxhdGZvcm1EaXNw
bGF5V2F5bGFuZChzdHJ1Y3Qgd2xfZGlzcGxheSogd2xEaXNwbGF5KQogCiBQbGF0Zm9ybURpc3Bs
YXlXYXlsYW5kOjp+UGxhdGZvcm1EaXNwbGF5V2F5bGFuZCgpCiB7Ci0gICAgaWYgKG1fd2Via2l0
Z3RrKQotICAgICAgICB3bF93ZWJraXRndGtfZGVzdHJveShtX3dlYmtpdGd0ayk7CiAgICAgaWYg
KG1fY29tcG9zaXRvcikKICAgICAgICAgd2xfY29tcG9zaXRvcl9kZXN0cm95KG1fY29tcG9zaXRv
cik7CiAgICAgaWYgKG1fcmVnaXN0cnkpCkBAIC0xMTIsMjUgKzEwOCw2IEBAIFBsYXRmb3JtRGlz
cGxheVdheWxhbmQ6On5QbGF0Zm9ybURpc3BsYXlXYXlsYW5kKCkKICAgICAgICAgd2xfZGlzcGxh
eV9kaXNjb25uZWN0KG1fZGlzcGxheSk7CiB9CiAKLXN0ZDo6dW5pcXVlX3B0cjxXYXlsYW5kU3Vy
ZmFjZT4gUGxhdGZvcm1EaXNwbGF5V2F5bGFuZDo6Y3JlYXRlU3VyZmFjZShjb25zdCBJbnRTaXpl
JiBzaXplLCBpbnQgd2lkZ2V0SWQpCi17Ci0gICAgc3RydWN0IHdsX3N1cmZhY2UqIHdsU3VyZmFj
ZSA9IHdsX2NvbXBvc2l0b3JfY3JlYXRlX3N1cmZhY2UobV9jb21wb3NpdG9yKTsKLSAgICAvLyBX
ZSBrZWVwIHRoZSBtaW5pbXVtIHNpemUgYXQgMXgxcHggc2luY2UgTWVzYSByZXR1cm5zIG51bGwg
dmFsdWVzIGluIHdsX2VnbF93aW5kb3dfY3JlYXRlKCkgZm9yIHplcm8gd2lkdGggb3IgaGVpZ2h0
LgotICAgIEVHTE5hdGl2ZVdpbmRvd1R5cGUgbmF0aXZlV2luZG93ID0gd2xfZWdsX3dpbmRvd19j
cmVhdGUod2xTdXJmYWNlLCBzdGQ6Om1heCgxLCBzaXplLndpZHRoKCkpLCBzdGQ6Om1heCgxLCBz
aXplLmhlaWdodCgpKSk7Ci0KLSAgICB3bF93ZWJraXRndGtfc2V0X3N1cmZhY2VfZm9yX3dpZGdl
dChtX3dlYmtpdGd0aywgd2xTdXJmYWNlLCB3aWRnZXRJZCk7Ci0gICAgd2xfZGlzcGxheV9yb3Vu
ZHRyaXAobV9kaXNwbGF5KTsKLQotICAgIHJldHVybiBzdGQ6Om1ha2VfdW5pcXVlPFdheWxhbmRT
dXJmYWNlPih3bFN1cmZhY2UsIG5hdGl2ZVdpbmRvdyk7Ci19Ci0KLXN0ZDo6dW5pcXVlX3B0cjxH
TENvbnRleHRFR0w+IFBsYXRmb3JtRGlzcGxheVdheWxhbmQ6OmNyZWF0ZVNoYXJpbmdHTENvbnRl
eHQoKQotewotICAgIHN0cnVjdCB3bF9zdXJmYWNlKiB3bFN1cmZhY2UgPSB3bF9jb21wb3NpdG9y
X2NyZWF0ZV9zdXJmYWNlKG1fY29tcG9zaXRvcik7Ci0gICAgRUdMTmF0aXZlV2luZG93VHlwZSBu
YXRpdmVXaW5kb3cgPSB3bF9lZ2xfd2luZG93X2NyZWF0ZSh3bFN1cmZhY2UsIDEsIDEpOwotICAg
IHJldHVybiBHTENvbnRleHRFR0w6OmNyZWF0ZVdpbmRvd0NvbnRleHQobmF0aXZlV2luZG93LCBu
dWxscHRyKTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gUExBVEZP
Uk0oV0FZTEFORCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3dheWxhbmQvUGxhdGZvcm1EaXNwbGF5V2F5bGFuZC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvd2F5bGFuZC9QbGF0Zm9ybURpc3BsYXlXYXlsYW5kLmgKaW5kZXggMzcwN2Vi
MDEzMDBmNWQ4MDczZTEyMTEzOGFlYzE4YzIyOTU4ZWQ1Mi4uYjEyZDAyYjBjZmE0NWQzZTU4ZDM4
ZTBiNmJhNjE2ZTFiNzJjZjQ2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvd2F5bGFuZC9QbGF0Zm9ybURpc3BsYXlXYXlsYW5kLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9QbGF0Zm9ybURpc3BsYXlXYXlsYW5kLmgK
QEAgLTQ4LDI0ICs0OCwxOSBAQCBwdWJsaWM6CiAKICAgICBzdHJ1Y3Qgd2xfZGlzcGxheSogbmF0
aXZlKCkgY29uc3QgeyByZXR1cm4gbV9kaXNwbGF5OyB9CiAKLSAgICBzdGQ6OnVuaXF1ZV9wdHI8
V2F5bGFuZFN1cmZhY2U+IGNyZWF0ZVN1cmZhY2UoY29uc3QgSW50U2l6ZSYsIGludCB3aWRnZXRJ
RCk7Ci0KLSAgICBzdGQ6OnVuaXF1ZV9wdHI8R0xDb250ZXh0RUdMPiBjcmVhdGVTaGFyaW5nR0xD
b250ZXh0KCk7Ci0KIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IHN0cnVjdCB3bF9yZWdpc3Ry
eV9saXN0ZW5lciBtX3JlZ2lzdHJ5TGlzdGVuZXI7CiAgICAgc3RhdGljIHZvaWQgZ2xvYmFsQ2Fs
bGJhY2sodm9pZCogZGF0YSwgc3RydWN0IHdsX3JlZ2lzdHJ5KiwgdWludDMyX3QgbmFtZSwgY29u
c3QgY2hhciogaW50ZXJmYWNlLCB1aW50MzJfdCB2ZXJzaW9uKTsKICAgICBzdGF0aWMgdm9pZCBn
bG9iYWxSZW1vdmVDYWxsYmFjayh2b2lkKiBkYXRhLCBzdHJ1Y3Qgd2xfcmVnaXN0cnkqLCB1aW50
MzJfdCBuYW1lKTsKIAogICAgIFBsYXRmb3JtRGlzcGxheVdheWxhbmQoc3RydWN0IHdsX2Rpc3Bs
YXkqKTsKLSAgICBib29sIGlzSW5pdGlhbGl6ZWQoKSB7IHJldHVybiBtX2NvbXBvc2l0b3IgJiYg
bV93ZWJraXRndGsgJiYgbV9lZ2xEaXNwbGF5ICE9IEVHTF9OT19ESVNQTEFZICYmIG1fZWdsQ29u
ZmlnQ2hvc2VuOyB9CisgICAgYm9vbCBpc0luaXRpYWxpemVkKCkgeyByZXR1cm4gbV9jb21wb3Np
dG9yICYmIG1fZWdsRGlzcGxheSAhPSBFR0xfTk9fRElTUExBWSAmJiBtX2VnbENvbmZpZ0Nob3Nl
bjsgfQogCi0gICAgVHlwZSB0eXBlKCkgY29uc3Qgb3ZlcnJpZGUgeyByZXR1cm4gUGxhdGZvcm1E
aXNwbGF5OjpUeXBlOjpXYXlsYW5kOyB9CisgICAgdmlydHVhbCBUeXBlIHR5cGUoKSBjb25zdCBv
dmVycmlkZSB7IHJldHVybiBQbGF0Zm9ybURpc3BsYXk6OlR5cGU6OldheWxhbmQ7IH0KIAogICAg
IHN0cnVjdCB3bF9kaXNwbGF5KiBtX2Rpc3BsYXk7CiAgICAgc3RydWN0IHdsX3JlZ2lzdHJ5KiBt
X3JlZ2lzdHJ5OwogICAgIHN0cnVjdCB3bF9jb21wb3NpdG9yKiBtX2NvbXBvc2l0b3I7Ci0gICAg
c3RydWN0IHdsX3dlYmtpdGd0ayogbV93ZWJraXRndGs7CiAKICAgICBFR0xDb25maWcgbV9lZ2xD
b25maWc7CiAgICAgYm9vbCBtX2VnbENvbmZpZ0Nob3NlbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvV2F5bGFuZFN1cmZhY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5jcHAK
aW5kZXggMWRjNzRjZWMzZWY5ZDZjMWZmZmNiOWE1ODc2ZTUxMmUyOGNiMTM0MS4uMmZhNDlhYjQz
NDA3MTU3OTJlODVlZjVhYTJmM2U4NTYyMjQxYWM5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5jcHAK
QEAgLTMwLDcgKzMwLDcgQEAKIAogI2luY2x1ZGUgIkdMQ29udGV4dEVHTC5oIgogI2luY2x1ZGUg
IkludFNpemUuaCIKLSNpbmNsdWRlICJXYXlsYW5kRGlzcGxheS5oIgorI2luY2x1ZGUgIlBsYXRm
b3JtRGlzcGxheVdheWxhbmQuaCIKICNpbmNsdWRlIDxFR0wvZWdsLmg+CiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKQEAgLTU0LDggKzU0LDkgQEAgV2F5bGFuZFN1cmZhY2U6OldheWxhbmRTdXJmYWNl
KHN0cnVjdCB3bF9zdXJmYWNlKiB3bFN1cmZhY2UsIEVHTE5hdGl2ZVdpbmRvd1R5cGUKIFdheWxh
bmRTdXJmYWNlOjp+V2F5bGFuZFN1cmZhY2UoKQogewogICAgIC8vIFRoZSBzdXJmYWNlIGNvdWxk
bid0IGhhdmUgYmVlbiBjcmVhdGVkIGluIHRoZSBmaXJzdCBwbGFjZSBpZiBXYXlsYW5kRGlzcGxh
eSB3YXNuJ3QgcHJvcGVybHkgaW5pdGlhbGl6ZWQuCi0gICAgQVNTRVJUKFdheWxhbmREaXNwbGF5
OjppbnN0YW5jZSgpKTsKLSAgICBlZ2xNYWtlQ3VycmVudChXYXlsYW5kRGlzcGxheTo6aW5zdGFu
Y2UoKS0+ZWdsRGlzcGxheSgpLCBFR0xfTk9fU1VSRkFDRSwgRUdMX05PX1NVUkZBQ0UsIEVHTF9O
T19DT05URVhUKTsKKyAgICBjb25zdCBQbGF0Zm9ybURpc3BsYXlXYXlsYW5kJiB3YXlsYW5kRGlz
cGxheSA9IGRvd25jYXN0PFBsYXRmb3JtRGlzcGxheVdheWxhbmQ+KFBsYXRmb3JtRGlzcGxheTo6
c2hhcmVkRGlzcGxheSgpKTsKKyAgICBBU1NFUlQod2F5bGFuZERpc3BsYXkubmF0aXZlKCkpOwor
ICAgIGVnbE1ha2VDdXJyZW50KHdheWxhbmREaXNwbGF5Lm5hdGl2ZSgpLCBFR0xfTk9fU1VSRkFD
RSwgRUdMX05PX1NVUkZBQ0UsIEVHTF9OT19DT05URVhUKTsKIAogICAgIHdsX2VnbF93aW5kb3df
ZGVzdHJveShtX25hdGl2ZVdpbmRvdyk7CiAgICAgd2xfc3VyZmFjZV9kZXN0cm95KG1fd2xTdXJm
YWNlKTsKQEAgLTY2LDExICs2Nyw2IEBAIHZvaWQgV2F5bGFuZFN1cmZhY2U6OnJlc2l6ZShjb25z
dCBJbnRTaXplJiBzaXplKQogICAgIHdsX2VnbF93aW5kb3dfcmVzaXplKG1fbmF0aXZlV2luZG93
LCBzaXplLndpZHRoKCksIHNpemUuaGVpZ2h0KCksIDAsIDApOwogfQogCi1zdGQ6OnVuaXF1ZV9w
dHI8R0xDb250ZXh0RUdMPiBXYXlsYW5kU3VyZmFjZTo6Y3JlYXRlR0xDb250ZXh0KCkKLXsKLSAg
ICByZXR1cm4gR0xDb250ZXh0RUdMOjpjcmVhdGVXaW5kb3dDb250ZXh0KG1fbmF0aXZlV2luZG93
LCBHTENvbnRleHQ6OnNoYXJpbmdDb250ZXh0KCkpOwotfQotCiB2b2lkIFdheWxhbmRTdXJmYWNl
OjpyZXF1ZXN0RnJhbWUoKQogewogICAgIHN0cnVjdCB3bF9jYWxsYmFjayogZnJhbWVDYWxsYmFj
ayA9IHdsX3N1cmZhY2VfZnJhbWUobV93bFN1cmZhY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXlsYW5kU3VyZmFjZS5oCmluZGV4
IDY5ZjIyYjFjZDZmM2IyNmUzNWI3ZGQyYzIzMTA0M2NmMTg2MjZiNDAuLjA1NzA3MTU4NWNmMjMw
MjI5MmM2MWM1YzdmNjc3NjQ4NWJlNDZhM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3dheWxhbmQvV2F5bGFuZFN1cmZhY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy93YXlsYW5kL1dheWxhbmRTdXJmYWNlLmgKQEAgLTQ4LDgg
KzQ4LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCByZXNpemUoY29uc3QgSW50U2l6ZSYpOwogCi0g
ICAgc3RkOjp1bmlxdWVfcHRyPEdMQ29udGV4dEVHTD4gY3JlYXRlR0xDb250ZXh0KCk7Ci0KICAg
ICB2b2lkIHJlcXVlc3RGcmFtZSgpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEvU291cmNlL2Nt
YWtlL09wdGlvbnNHVEsuY21ha2UgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQppbmRl
eCA5NTM0ZTBmNDlhM2JhYzE5NTcxNmM1YzViODNkNDZmMTc3Y2RkOGU5Li5jM2ZhYjY4M2RiMGFi
Zjk0YWE2YjBhODkwMTNiODQxZTc4MzY4YWIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvY21ha2UvT3B0
aW9uc0dUSy5jbWFrZQorKysgYi9Tb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZQpAQCAtODAs
OSArODAsNiBAQCBXRUJLSVRfT1BUSU9OX0RFRklORShVU0VfUkVESVJFQ1RFRF9YQ09NUE9TSVRF
X1dJTkRPVyAiV2hldGhlciB0byB1c2UgYSBSZWRpcmVjdAogIyBGSVhNRTogQ2FuIHdlIHVzZSBj
YWlyby1nbGVzdjIgdG8gYXZvaWQgdGhpcyBjb25mbGljdD8KIFdFQktJVF9PUFRJT05fQ09ORkxJ
Q1QoRU5BQkxFX0FDQ0VMRVJBVEVEXzJEX0NBTlZBUyBFTkFCTEVfR0xFUzIpCiAKLSMgRklYTUU6
IFNob3VsZCBiZSBwb3NzaWJsZSB0byBidWlsZCB3aXRoIHN1cHBvcnQgZm9yIGJvdGggWDExIGFu
ZCBXYXlsYW5kLgotV0VCS0lUX09QVElPTl9DT05GTElDVChFTkFCTEVfV0FZTEFORF9UQVJHRVQg
RU5BQkxFX1gxMV9UQVJHRVQpCi0KIFdFQktJVF9PUFRJT05fREVQRU5EKEVOQUJMRV8zRF9UUkFO
U0ZPUk1TIEVOQUJMRV9PUEVOR0wpCiBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfQUNDRUxF
UkFURURfMkRfQ0FOVkFTIEVOQUJMRV9PUEVOR0wpCiBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFC
TEVfR0xFUzIgRU5BQkxFX09QRU5HTCkKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxv
ZwppbmRleCA3MDQxNWE4ODY2YWIwMmFlYmNkNmI5MzhhZGNkNGNjYTFmNjEwZTk0Li40Y2E4MGQ1
NTQ5ZThkYWVhZjQ0MTNkOTg0YWQ3NTAwNGU0MmZmY2VmIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cK
KysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUtMDYtMDMgIENhcmxvcyBBbGJl
cnRvIExvcGV6IFBlcmV6ICA8Y2xvcGV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10gW1dh
eWxhbmRdIEJ1aWxkIGlzIGJyb2tlbiBvbiB0cnVuaworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQyODc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvY21ha2UvT3B0aW9uc0dUSy5jbWFrZTog
UmVtb3ZlIGNtYWtlIGNvbmZsaWN0IGZvciBidWlsZGluZworICAgICAgICBhdCB0aGUgc2FtZSB0
aW1lIHRoZSBYMTEgYW5kIFdheWxhbmQgdGFyZ2V0cyB0aGF0IHIxODM0OTEgYWRkZWQuCisgICAg
ICAgIEJ1aWxkaW5nIGJvdGggd2FzIHByZXZpb3VzbHkgc3VwcG9ydGVkIGFuZCBjb250aW51ZXMg
dG8gYmUuCisgICAgICAgIFdoZW4gcnVubmluZyBpdCwgdGhlIFdheWxhbmQgdGFyZ2V0IHdpbGwg
YmUgdXNlZCBpZiB3ZSBhcmUgcnVubmluZworICAgICAgICBpbnNpZGUgYSBXYXlsYW5kIGNvbXBv
c2l0b3IgKFdlc3RvbiBmb3IgZXhhbXBsZSkgYW5kIG91ciBlbnZpcm9ubWVudAorICAgICAgICBk
b24ndCBoYXMgc2V0IHRoZSBESVNQTEFZIHZhcmlhYmxlLgorCiAyMDE1LTA2LTAxICBDc2FiYSBP
c3p0cm9nb27DoWMgIDxvc3N5QHdlYmtpdC5vcmc+CiAKICAgICAgICAgW2NtYWtlXSBTdXBwcmVz
cyBwYXJlbnRoZXNlcy1lcXVhbGl0eSB3YXJuaW5ncwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>254185</attachid>
            <date>2015-06-03 10:15:43 -0700</date>
            <delta_ts>2015-06-04 03:57:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142879-20150603191522.patch</filename>
            <type>text/plain</type>
            <size>5453</size>
            <attacher name="Carlos Alberto Lopez Perez">clopez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg1MTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzFlODUzM2ViNzA1MjIx
NjkxMWJmMmU1YTJiMGFkODlmZmY0MDExYi4uZDBlZDY0YWExOTY5NTMzNGE2Yzk0OTE3YWMwNzY1
YzM4YWU1ZTZhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE1LTA2LTAzICBDYXJs
b3MgQWxiZXJ0byBMb3BleiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtH
VEtdIFtXYXlsYW5kXSBCdWlsZCBpcyBicm9rZW4gb24gdHJ1bmsKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0Mjg3OQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cywgbm8gYmVoYXZpb3Ig
Y2hhbmdlcy4KKworICAgICAgICBQYXRjaCBvbiBHTENvbnRleHQuaCBwaWNrZWQgZnJvbSBidWcg
MTM2ODMxIGJ5CisgICAgICAgIElhZ28gVG9yYWwgPGl0b3JhbEBpZ2FsaWEuY29tPiBhbmQgWmFu
IERvYmVyc2VrIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKworICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL0dMQ29udGV4dC5oOiBJbmNsdWRlIHdheWxhbmQtZWdsLmggYmVmb3JlIGVnbHBsYXRm
b3JtLmgKKyAgICAgICAgdG8gdXNlIHRoZSBXYXlsYW5kIHBsYXRmb3JtIHdoZW4gYnVpbGRpbmcg
Zm9yIFdheWxhbmQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1EaXNwbGF5
LmNwcDogRml4IHRoZSBpbmNsdWRlIG9mIEdESworICAgICAgICBoZWFkZXJzIGZvciB0aGUgZGlm
ZmVyZW50IHRhcmdldHMuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFuZC9XYXls
YW5kU3VyZmFjZS5jcHA6IEZpeCBidWlsZCBhZnRlciByMTgzNzMxLgorICAgICAgICAoV2ViQ29y
ZTo6V2F5bGFuZFN1cmZhY2U6On5XYXlsYW5kU3VyZmFjZSk6CitxCiAyMDE1LTA2LTAzICBYYWJp
ZXIgUm9kcmlndWV6IENhbHZhciAgPGNhbHZhcmlzQGlnYWxpYS5jb20+IGFuZCBZb3Vlbm4gRmFi
bGV0IDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KIAogICAgICAgICBbU3RyZWFtcyBBUEld
IFJlYWRhYmxlU3RyZWFtUmVhZGVyOjpjbG9zZWQoKSBzaG91bGQgYmUgY2FsbGVkIG9uY2UgYnkg
YmluZGluZyBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDI3OWFjMmNlNWIwNTI3ZTQxNjcwN2IxMWJkMGQz
ZDRiMjkyNTgzNy4uMjk2NDA4NGE3M2ExMWYwZjQ3NThiN2U0ZWU1OTE2YTYzYTQ2Mzg0MSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE1LTA2LTAzICBDYXJsb3MgQWxiZXJ0byBMb3Bl
eiBQZXJleiAgPGNsb3BlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFtHVEtdIFtXYXlsYW5kXSBC
dWlsZCBpcyBicm9rZW4gb24gdHJ1bmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0Mjg3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9MYXllclRyZWVIb3N0R3Rr
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TGF5ZXJUcmVlSG9zdEd0azo6bWFrZUNvbnRleHRDdXJy
ZW50KTogV2hlbiBXYXlsYW5kIHRhcmdldAorICAgICAgICBpcyBlbmFibGVkIEdMTmF0aXZlV2lu
ZG93VHlwZSBpcyBub3QgYW4gdV9pbnQ2NCB0eXBlLgorICAgICAgICBDYXN0IGNvbnRleHRJRCB0
byBhdm9pZCBhIGJ1aWxkIGZhaWx1cmUuCisKIDIwMTUtMDYtMDIgIEh5dW5nd29vayBMZWUgIDxo
eXVuZ3dvb2subGVlQG5hdmVyY29ycC5jb20+CiAKICAgICAgICAgW0VGTF0gSW1wbGVtZW50IGxv
YWRfc3RhcnRlZCBjYWxsYmFjayBpbiBFd2tQYWdlQ2xpZW50LgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR0xDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuaAppbmRleCBhNDU0YjI1OThhNGE4MjAwNWE4ZDRl
YjA0NWIxYzE0NTU3ZmM1YmIyLi5lOGY5N2IyZjFjMzM1NmYzNjcwNjQzNGJjNzQ3ZTBmZmEyNWQ1
MzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRl
eHQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HTENvbnRleHQuaApA
QCAtMjcsNiArMjcsMTAgQEAKICNpZiBVU0UoRUdMKSAmJiAhUExBVEZPUk0oR1RLKQogI2luY2x1
ZGUgImVnbHBsYXRmb3JtLmgiCiB0eXBlZGVmIEVHTE5hdGl2ZVdpbmRvd1R5cGUgR0xOYXRpdmVX
aW5kb3dUeXBlOworI2VsaWYgUExBVEZPUk0oR1RLKSAmJiBQTEFURk9STShXQVlMQU5EKSAmJiAh
ZGVmaW5lZChHVEtfQVBJX1ZFUlNJT05fMikKKyNpbmNsdWRlIDx3YXlsYW5kLWVnbC5oPgorI2lu
Y2x1ZGUgPEVHTC9lZ2xwbGF0Zm9ybS5oPgordHlwZWRlZiBFR0xOYXRpdmVXaW5kb3dUeXBlIEdM
TmF0aXZlV2luZG93VHlwZTsKICNlbHNlCiB0eXBlZGVmIHVpbnQ2NF90IEdMTmF0aXZlV2luZG93
VHlwZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvUGxhdGZvcm1EaXNwbGF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L1BsYXRmb3JtRGlzcGxheS5jcHAKaW5kZXggNTgzZTc1ZjVhMGM0OGJmZjU1MzZlYmQyNDA3ZDcz
ZjI3MDM0NjFlMS4uZGYxNjU1N2Q5YzQ4MWJhMGViYzhhMjRhZmM3ZWFjNTJjMGZhOGQyOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1EaXNwbGF5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybURpc3Bs
YXkuY3BwCkBAIC00Miw4ICs0MiwxMyBAQAogI2VuZGlmCiAKICNpZiBQTEFURk9STShHVEspCisj
aWYgUExBVEZPUk0oWDExKQogI2luY2x1ZGUgPGdkay9nZGt4Lmg+CiAjZW5kaWYKKyNpZiBQTEFU
Rk9STShXQVlMQU5EKSAmJiAhIGRlZmluZWQoR1RLX0FQSV9WRVJTSU9OXzIpCisjaW5jbHVkZSA8
Z2RrL2dka3dheWxhbmQuaD4KKyNlbmRpZgorI2VuZGlmIC8vIFBMQVRGT1JNKEdUSykKIAogI2lm
IFBMQVRGT1JNKEVGTCkgJiYgZGVmaW5lZChIQVZFX0VDT1JFX1gpCiAjaW5jbHVkZSA8RWNvcmVf
WC5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2F5bGFu
ZC9XYXlsYW5kU3VyZmFjZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93
YXlsYW5kL1dheWxhbmRTdXJmYWNlLmNwcAppbmRleCAxZGM3NGNlYzNlZjlkNmMxZmZmY2I5YTU4
NzZlNTEyZTI4Y2IxMzQxLi45NzFhYjE5ZWQzNDk1NjRhZWY2ZTNjZWJmYjg0YjgxYzdiYzUyNDUy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93YXlsYW5kL1dh
eWxhbmRTdXJmYWNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93
YXlsYW5kL1dheWxhbmRTdXJmYWNlLmNwcApAQCAtMzAsNyArMzAsNyBAQAogCiAjaW5jbHVkZSAi
R0xDb250ZXh0RUdMLmgiCiAjaW5jbHVkZSAiSW50U2l6ZS5oIgotI2luY2x1ZGUgIldheWxhbmRE
aXNwbGF5LmgiCisjaW5jbHVkZSAiUGxhdGZvcm1EaXNwbGF5V2F5bGFuZC5oIgogI2luY2x1ZGUg
PEVHTC9lZ2wuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTQsOCArNTQsOSBAQCBXYXls
YW5kU3VyZmFjZTo6V2F5bGFuZFN1cmZhY2Uoc3RydWN0IHdsX3N1cmZhY2UqIHdsU3VyZmFjZSwg
RUdMTmF0aXZlV2luZG93VHlwZQogV2F5bGFuZFN1cmZhY2U6On5XYXlsYW5kU3VyZmFjZSgpCiB7
CiAgICAgLy8gVGhlIHN1cmZhY2UgY291bGRuJ3QgaGF2ZSBiZWVuIGNyZWF0ZWQgaW4gdGhlIGZp
cnN0IHBsYWNlIGlmIFdheWxhbmREaXNwbGF5IHdhc24ndCBwcm9wZXJseSBpbml0aWFsaXplZC4K
LSAgICBBU1NFUlQoV2F5bGFuZERpc3BsYXk6Omluc3RhbmNlKCkpOwotICAgIGVnbE1ha2VDdXJy
ZW50KFdheWxhbmREaXNwbGF5OjppbnN0YW5jZSgpLT5lZ2xEaXNwbGF5KCksIEVHTF9OT19TVVJG
QUNFLCBFR0xfTk9fU1VSRkFDRSwgRUdMX05PX0NPTlRFWFQpOworICAgIGNvbnN0IFBsYXRmb3Jt
RGlzcGxheVdheWxhbmQmIHdheWxhbmREaXNwbGF5ID0gZG93bmNhc3Q8UGxhdGZvcm1EaXNwbGF5
V2F5bGFuZD4oUGxhdGZvcm1EaXNwbGF5OjpzaGFyZWREaXNwbGF5KCkpOworICAgIEFTU0VSVCh3
YXlsYW5kRGlzcGxheS5uYXRpdmUoKSk7CisgICAgZWdsTWFrZUN1cnJlbnQod2F5bGFuZERpc3Bs
YXkubmF0aXZlKCksIEVHTF9OT19TVVJGQUNFLCBFR0xfTk9fU1VSRkFDRSwgRUdMX05PX0NPTlRF
WFQpOwogCiAgICAgd2xfZWdsX3dpbmRvd19kZXN0cm95KG1fbmF0aXZlV2luZG93KTsKICAgICB3
bF9zdXJmYWNlX2Rlc3Ryb3kobV93bFN1cmZhY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL2d0ay9MYXllclRyZWVIb3N0R3RrLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9ndGsvTGF5ZXJUcmVlSG9zdEd0ay5jcHAKaW5kZXgg
YmI3MmVkMjBlZDJmMjM4M2UzZWE2MGVhYTRlNWE4MDc3NjdlODJlMS4uOGQ1ODQ4MTk0Njk5MGNk
YWM2ZDBiYTcyNTliYTVhNTBhODI2YjZlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL2d0ay9MYXllclRyZWVIb3N0R3RrLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvZ3RrL0xheWVyVHJlZUhvc3RHdGsuY3BwCkBAIC04NCw3
ICs4NCw3IEBAIGJvb2wgTGF5ZXJUcmVlSG9zdEd0azo6bWFrZUNvbnRleHRDdXJyZW50KCkKICAg
ICAgICAgaWYgKCFtX2xheWVyVHJlZUNvbnRleHQuY29udGV4dElEKQogICAgICAgICAgICAgcmV0
dXJuIGZhbHNlOwogCi0gICAgICAgIG1fY29udGV4dCA9IEdMQ29udGV4dDo6Y3JlYXRlQ29udGV4
dEZvcldpbmRvdyhtX2xheWVyVHJlZUNvbnRleHQuY29udGV4dElELCBHTENvbnRleHQ6OnNoYXJp
bmdDb250ZXh0KCkpOworICAgICAgICBtX2NvbnRleHQgPSBHTENvbnRleHQ6OmNyZWF0ZUNvbnRl
eHRGb3JXaW5kb3coKEdMTmF0aXZlV2luZG93VHlwZSkgbV9sYXllclRyZWVDb250ZXh0LmNvbnRl
eHRJRCwgR0xDb250ZXh0OjpzaGFyaW5nQ29udGV4dCgpKTsKICAgICAgICAgaWYgKCFtX2NvbnRl
eHQpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>