<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>183008</bug_id>
          
          <creation_ts>2007-06-23 22:58 0000</creation_ts>
          <short_desc>app-text/xpdf-3.01-r8 fails with app-text/poppler-0.5.9: error: config.h: No such file or directory</short_desc>
          <delta_ts>2007-06-24 09:20:47 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Applications</component>
          <version>2007.0</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          <bug_file_loc>https://bugs.freedesktop.org/show_bug.cgi?id=11243</bug_file_loc>
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>ed@catmur.co.uk</reporter>
          <assigned_to>printing@gentoo.org</assigned_to>
          

      

      
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-23 22:58:56 0000</bug_when>
            <thetext>g++ -ggdb -O1 -O2 -O3 -pipe -march=athlon-xp -mmmx -msse -m3dnow -I/usr/include/poppler -I/usr/include/poppler/goo -I/usr/include/poppler/splash  -c -o PDFCore.o PDFCore.cc
In file included from /usr/include/poppler/Object.h:19,
                 from CoreOutputDev.cc:13:
/usr/include/poppler/goo/gmem.h:13:20: error: config.h: No such file or directory
distcc[17287] ERROR: compile CoreOutputDev.cc on localhost failed
make: *** [CoreOutputDev.o] Error 1

!!! ERROR: app-text/xpdf-3.01-r8 failed.
Call stack:
  ebuild.sh, line 1629:   Called dyn_compile
  ebuild.sh, line 975:   Called qa_call &apos;src_compile&apos;
  ebuild.sh, line 44:   Called src_compile
  ebuild.sh, line 649:   Called die</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-23 23:00:48 0000</bug_when>
            <thetext>Looks to be https://bugs.freedesktop.org/show_bug.cgi?id=11243
Testing patch now.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-23 23:11:51 0000</bug_when>
            <thetext>Note patch there has DOS line breaks, so may need fixing before using.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-23 23:32:45 0000</bug_when>
            <thetext>OK, that works.

Next error:
g++  -I/usr/include/poppler -I/usr/include/poppler/goo -I/usr/include/poppler/splash  -c -o PDFCore.o PDFCore.cc
In file included from PDFCore.cc:27:
PDFCore.h:19:24: error: UGooString.h: No such file or directory
PDFCore.h:159: error: ‘UGooString’ has not been declared
PDFCore.cc: In constructor ‘PDFCore::PDFCore(SplashColorMode, int, GBool, Guchar*)’:
PDFCore.cc:84: error: ‘class GlobalParams’ has no member named ‘getContinuousView’
PDFCore.cc: In member function ‘void PDFCore::needTile(PDFCorePage*, int, int)’:
PDFCore.cc:794: error: ‘class PDFDoc’ has no member named ‘takeLinks’
PDFCore.cc: At global scope:
PDFCore.cc:854: error: ‘GBool PDFCore::gotoNamedDestination’ is not a static member of ‘class PDFCore’
PDFCore.cc:854: error: ‘UGooString’ was not declared in this scope
PDFCore.cc:854: error: ‘dest’ was not declared in this scope
PDFCore.cc:854: error: expected ‘,’ or ‘;’ before ‘{’ token
PDFCore.cc: In member function ‘void PDFCore::xorRectangle(int, int, int, int, int, SplashPattern*, PDFCoreTile*)’:
PDFCore.cc:1216: error: no matching function for call to ‘Splash::Splash(SplashBitmap*&amp;)’
/usr/include/poppler/splash/Splash.h:73: note: candidates are: Splash::Splash(SplashBitmap*, GBool, SplashScreen*)
/usr/include/poppler/splash/Splash.h:71: note:                 Splash::Splash(SplashBitmap*, GBool, SplashScreenParams*)
/usr/include/poppler/splash/Splash.h:66: note:                 Splash::Splash(const Splash&amp;)
PDFCore.cc: In member function ‘void PDFCore::cvtUserToDev(int, double, double, int*, int*)’:
PDFCore.cc:1587: error: no matching function for call to ‘Page::getDefaultCTM(double [6], double&amp;, double&amp;, int&amp;, GBool)’
/usr/include/poppler/Page.h:211: note: candidates are: void Page::getDefaultCTM(double*, double, double, int, GBool, GBool)
make: *** [PDFCore.o] Error 1
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-24 00:03:51 0000</bug_when>
            <thetext>Right, a proper a fix will involve xpdf 3.02 (bug 176081) but a hack to compile should be doable.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-24 00:04:53 0000</bug_when>
            <thetext>Created an attachment (id=122920)
app-text/xpdf/poppler-0.5.9.patch

Patch, converting UGooString to GooString, hacking API and removing unsupported GlobalParams calls.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>ed@catmur.co.uk</who>
            <bug_when>2007-06-24 00:05:49 0000</bug_when>
            <thetext>xpdf compiles and appears to work with both patches applied.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>genstef@gentoo.org</who>
            <bug_when>2007-06-24 09:20:47 0000</bug_when>
            <thetext>thank you! I have made the necessary commits.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>122920</attachid>
            <date>2007-06-24 00:04 0000</date>
            <desc>app-text/xpdf/poppler-0.5.9.patch</desc>
            <filename>poppler-0.5.9.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXAgL3Vzci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1w
b3BwbGVyL1BERkNvcmUuY2MgLi9QREZDb3JlLmNjCi0tLSAvdXNyL3NyYy9kZWJ1Zy9hcHAtdGV4
dC94cGRmLTMuMDEtcjgveHBkZi0zLjAxLXBvcHBsZXIvUERGQ29yZS5jYwkyMDA2LTEyLTE1IDEw
OjI1OjI0LjAwMDAwMDAwMCArMDAwMAorKysgLi9QREZDb3JlLmNjCTIwMDctMDYtMjQgMDA6NTY6
MTAuMDAwMDAwMDAwICswMTAwCkBAIC04MSw3ICs4MSw2IEBAIFBERkNvcmU6OlBERkNvcmUoU3Bs
YXNoQ29sb3JNb2RlIGNvbG9yTW8KICAgaW50IGk7CiAKICAgZG9jID0gTlVMTDsKLSAgY29udGlu
dW91c01vZGUgPSBnbG9iYWxQYXJhbXMtPmdldENvbnRpbnVvdXNWaWV3KCk7CiAgIGRyYXdBcmVh
V2lkdGggPSBkcmF3QXJlYUhlaWdodCA9IDA7CiAgIG1heFBhZ2VXID0gdG90YWxEb2NIID0gMDsK
ICAgcGFnZVkgPSBOVUxMOwpAQCAtNzkxLDcgKzc5MCw3IEBAIHZvaWQgUERGQ29yZTo6bmVlZFRp
bGUoUERGQ29yZVBhZ2UgKnBhZ2UKICAgbWVtY3B5KHRpbGUtPmN0bSwgb3V0LT5nZXREZWZDVE0o
KSwgNiAqIHNpemVvZihkb3VibGUpKTsKICAgbWVtY3B5KHRpbGUtPmljdG0sIG91dC0+Z2V0RGVm
SUNUTSgpLCA2ICogc2l6ZW9mKGRvdWJsZSkpOwogICBpZiAoIXBhZ2UtPmxpbmtzKSB7Ci0gICAg
cGFnZS0+bGlua3MgPSBkb2MtPnRha2VMaW5rcygpOworICAgIHBhZ2UtPmxpbmtzID0gZG9jLT5n
ZXRMaW5rcyhwYWdlLT5wYWdlKTsKICAgfQogICBpZiAoIXBhZ2UtPnRleHQpIHsKICAgICBpZiAo
KHRleHRPdXQgPSBuZXcgVGV4dE91dHB1dERldihOVUxMLCBnVHJ1ZSwgZ0ZhbHNlLCBnRmFsc2Up
KSkgewpAQCAtODUxLDcgKzg1MCw3IEBAIEdCb29sIFBERkNvcmU6OmdvdG9QcmV2UGFnZShpbnQg
ZGVjLCBHQm8KICAgcmV0dXJuIGdUcnVlOwogfQogCi1HQm9vbCBQREZDb3JlOjpnb3RvTmFtZWRE
ZXN0aW5hdGlvbihVR29vU3RyaW5nICpkZXN0KSB7CitHQm9vbCBQREZDb3JlOjpnb3RvTmFtZWRE
ZXN0aW5hdGlvbihHb29TdHJpbmcgKmRlc3QpIHsKICAgTGlua0Rlc3QgKmQ7CiAKICAgaWYgKCFk
b2MpIHsKQEAgLTEyMTMsNyArMTIxMiw3IEBAIHZvaWQgUERGQ29yZTo6eG9yUmVjdGFuZ2xlKGlu
dCBwZywgaW50IHgKICAgICBmb3IgKGkgPSAwOyBpIDwgcGFnZS0+dGlsZXMtPmdldExlbmd0aCgp
OyArK2kpIHsKICAgICAgIHRpbGUgPSAoUERGQ29yZVRpbGUgKilwYWdlLT50aWxlcy0+Z2V0KGkp
OwogICAgICAgaWYgKCFvbmVUaWxlIHx8IHRpbGUgPT0gb25lVGlsZSkgewotCXNwbGFzaCA9IG5l
dyBTcGxhc2godGlsZS0+Yml0bWFwKTsKKwlzcGxhc2ggPSBuZXcgU3BsYXNoKHRpbGUtPmJpdG1h
cCwgZ0ZhbHNlKTsKIAlzcGxhc2gtPnNldEZpbGxQYXR0ZXJuKHBhdHRlcm4tPmNvcHkoKSk7CiAJ
eHgwID0gKFNwbGFzaENvb3JkKSh4MCAtIHRpbGUtPnhNaW4pOwogCXl5MCA9IChTcGxhc2hDb29y
ZCkoeTAgLSB0aWxlLT55TWluKTsKQEAgLTE1ODQsNyArMTU4Myw3IEBAIHZvaWQgUERGQ29yZTo6
Y3Z0VXNlclRvRGV2KGludCBwZywgZG91YmwKIAkJdGlsZS0+Y3RtWzNdICogeXUgKyB0aWxlLT5j
dG1bNV0gKyAwLjUpOwogICB9IGVsc2UgewogICAgIGRvYy0+Z2V0Q2F0YWxvZygpLT5nZXRQYWdl
KHBnKS0+Z2V0RGVmYXVsdENUTShjdG0sIGRwaSwgZHBpLCByb3RhdGUsCi0JCQkJCQkgIG91dC0+
dXBzaWRlRG93bigpKTsKKwkJCQkJCQkJCQkJCSAgZ0ZhbHNlLCBvdXQtPnVwc2lkZURvd24oKSk7
CiAgICAgKnhkID0gKGludCkoY3RtWzBdICogeHUgKyBjdG1bMl0gKiB5dSArIGN0bVs0XSArIDAu
NSk7CiAgICAgKnlkID0gKGludCkoY3RtWzFdICogeHUgKyBjdG1bM10gKiB5dSArIGN0bVs1XSAr
IDAuNSk7CiAgIH0KZGlmZiAtdXAgL3Vzci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAxLXI4
L3hwZGYtMy4wMS1wb3BwbGVyL1BERkNvcmUuaCAuL1BERkNvcmUuaAotLS0gL3Vzci9zcmMvZGVi
dWcvYXBwLXRleHQveHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3BwbGVyL1BERkNvcmUuaAkyMDA2
LTEyLTE1IDEwOjI1OjI0LjAwMDAwMDAwMCArMDAwMAorKysgLi9QREZDb3JlLmgJMjAwNy0wNi0y
NCAwMDo1NzozNi4wMDAwMDAwMDAgKzAxMDAKQEAgLTE2LDcgKzE2LDcgQEAKICNpbmNsdWRlIDxz
dGRsaWIuaD4KICNpbmNsdWRlICJTcGxhc2hUeXBlcy5oIgogI2luY2x1ZGUgIkNoYXJUeXBlcy5o
IgotI2luY2x1ZGUgIlVHb29TdHJpbmcuaCIKKyNpbmNsdWRlICJHb29TdHJpbmcuaCIKIAogY2xh
c3MgR29vU3RyaW5nOwogY2xhc3MgR29vTGlzdDsKQEAgLTE1Niw3ICsxNTYsNyBAQCBwdWJsaWM6
CiAKICAgdmlydHVhbCBHQm9vbCBnb3RvTmV4dFBhZ2UoaW50IGluYywgR0Jvb2wgdG9wKTsKICAg
dmlydHVhbCBHQm9vbCBnb3RvUHJldlBhZ2UoaW50IGRlYywgR0Jvb2wgdG9wLCBHQm9vbCBib3R0
b20pOwotICB2aXJ0dWFsIEdCb29sIGdvdG9OYW1lZERlc3RpbmF0aW9uKFVHb29TdHJpbmcgKmRl
c3QpOworICB2aXJ0dWFsIEdCb29sIGdvdG9OYW1lZERlc3RpbmF0aW9uKEdvb1N0cmluZyAqZGVz
dCk7CiAgIHZpcnR1YWwgR0Jvb2wgZ29Gb3J3YXJkKCk7CiAgIHZpcnR1YWwgR0Jvb2wgZ29CYWNr
d2FyZCgpOwogICB2aXJ0dWFsIHZvaWQgc2Nyb2xsTGVmdChpbnQgbkNvbHMgPSAxKTsKZGlmZiAt
dXAgL3Vzci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3BwbGVy
L1hQREZBcHAuY2MgLi9YUERGQXBwLmNjCi0tLSAvdXNyL3NyYy9kZWJ1Zy9hcHAtdGV4dC94cGRm
LTMuMDEtcjgveHBkZi0zLjAxLXBvcHBsZXIvWFBERkFwcC5jYwkyMDA2LTEyLTE1IDEwOjI1OjI0
LjAwMDAwMDAwMCArMDAwMAorKysgLi9YUERGQXBwLmNjCTIwMDctMDYtMjQgMDA6NDI6MjcuMDAw
MDAwMDAwICswMTAwCkBAIC0yMzYsNyArMjM2LDcgQEAgWFBERlZpZXdlciAqWFBERkFwcDo6b3Bl
bihHb29TdHJpbmcgKmZpbAogICByZXR1cm4gdmlld2VyOwogfQogCi1YUERGVmlld2VyICpYUERG
QXBwOjpvcGVuQXREZXN0KEdvb1N0cmluZyAqZmlsZU5hbWUsIFVHb29TdHJpbmcgKmRlc3QsCitY
UERGVmlld2VyICpYUERGQXBwOjpvcGVuQXREZXN0KEdvb1N0cmluZyAqZmlsZU5hbWUsIEdvb1N0
cmluZyAqZGVzdCwKIAkJCQlHb29TdHJpbmcgKm93bmVyUGFzc3dvcmQsCiAJCQkJR29vU3RyaW5n
ICp1c2VyUGFzc3dvcmQpIHsKICAgWFBERlZpZXdlciAqdmlld2VyOwpAQCAtMzI0LDcgKzMyNCw3
IEBAIHZvaWQgWFBERkFwcDo6cmVtb3RlT3BlbihHb29TdHJpbmcgKmZpbGUKICAgWEZsdXNoKGRp
c3BsYXkpOwogfQogCi12b2lkIFhQREZBcHA6OnJlbW90ZU9wZW5BdERlc3QoR29vU3RyaW5nICpm
aWxlTmFtZSwgVUdvb1N0cmluZyAqZGVzdCwgR0Jvb2wgcmFpc2UpIHsKK3ZvaWQgWFBERkFwcDo6
cmVtb3RlT3BlbkF0RGVzdChHb29TdHJpbmcgKmZpbGVOYW1lLCBHb29TdHJpbmcgKmRlc3QsIEdC
b29sIHJhaXNlKSB7CiAgIGNoYXIgY21kW3JlbW90ZUNtZFNpemVdOwogCiAgIHNwcmludGYoY21k
LCAiJWMgKyUuMjU2cyAlLjIwMHMiLApAQCAtMzYyLDcgKzM2Miw3IEBAIHZvaWQgWFBERkFwcDo6
cmVtb3RlTXNnQ2JrKFdpZGdldCB3aWRnZXQKICAgY2hhciAqcCwgKnE7CiAgIEdvb1N0cmluZyAq
ZmlsZU5hbWU7CiAgIGludCBwYWdlOwotICBVR29vU3RyaW5nICpkZXN0TmFtZTsKKyAgR29vU3Ry
aW5nICpkZXN0TmFtZTsKIAogICBpZiAoZXZlbnQtPnhwcm9wZXJ0eS5hdG9tICE9IGFwcC0+cmVt
b3RlQXRvbSkgewogICAgICpjb250ID0gVHJ1ZTsKQEAgLTM5Myw3ICszOTMsNyBAQCB2b2lkIFhQ
REZBcHA6OnJlbW90ZU1zZ0NiayhXaWRnZXQgd2lkZ2V0CiAgICAgcGFnZSA9IDE7CiAgICAgZGVz
dE5hbWUgPSBOVUxMOwogICAgIGlmICgqcCA9PSAnKycpIHsKLSAgICAgIGRlc3ROYW1lID0gbmV3
IFVHb29TdHJpbmcocCArIDEpOworICAgICAgZGVzdE5hbWUgPSBuZXcgR29vU3RyaW5nKHAgKyAx
KTsKICAgICB9IGVsc2UgewogICAgICAgcGFnZSA9IGF0b2kocCk7CiAgICAgfQpkaWZmIC11cCAv
dXNyL3NyYy9kZWJ1Zy9hcHAtdGV4dC94cGRmLTMuMDEtcjgveHBkZi0zLjAxLXBvcHBsZXIvWFBE
RkFwcC5oIC4vWFBERkFwcC5oCi0tLSAvdXNyL3NyYy9kZWJ1Zy9hcHAtdGV4dC94cGRmLTMuMDEt
cjgveHBkZi0zLjAxLXBvcHBsZXIvWFBERkFwcC5oCTIwMDYtMTItMTUgMTA6MjU6MjQuMDAwMDAw
MDAwICswMDAwCisrKyAuL1hQREZBcHAuaAkyMDA3LTA2LTI0IDAwOjQxOjU5LjAwMDAwMDAwMCAr
MDEwMApAQCAtMTgsNyArMTgsNyBAQAogI3VuZGVmIE9iamVjdAogI2luY2x1ZGUgImd0eXBlcy5o
IgogI2luY2x1ZGUgIlNwbGFzaFR5cGVzLmgiCi0jaW5jbHVkZSAiVUdvb1N0cmluZy5oIgorI2lu
Y2x1ZGUgIkdvb1N0cmluZy5oIgogCiBjbGFzcyBHb29TdHJpbmc7CiBjbGFzcyBHb29MaXN0OwpA
QCAtNDEsNyArNDEsNyBAQCBwdWJsaWM6CiAgIFhQREZWaWV3ZXIgKm9wZW4oR29vU3RyaW5nICpm
aWxlTmFtZSwgaW50IHBhZ2UgPSAxLAogCQkgICBHb29TdHJpbmcgKm93bmVyUGFzc3dvcmQgPSBO
VUxMLAogCQkgICBHb29TdHJpbmcgKnVzZXJQYXNzd29yZCA9IE5VTEwpOwotICBYUERGVmlld2Vy
ICpvcGVuQXREZXN0KEdvb1N0cmluZyAqZmlsZU5hbWUsIFVHb29TdHJpbmcgKmRlc3QsCisgIFhQ
REZWaWV3ZXIgKm9wZW5BdERlc3QoR29vU3RyaW5nICpmaWxlTmFtZSwgR29vU3RyaW5nICpkZXN0
LAogCQkJIEdvb1N0cmluZyAqb3duZXJQYXNzd29yZCA9IE5VTEwsCiAJCQkgR29vU3RyaW5nICp1
c2VyUGFzc3dvcmQgPSBOVUxMKTsKICAgdm9pZCBjbG9zZShYUERGVmlld2VyICp2aWV3ZXIsIEdC
b29sIGNsb3NlTGFzdCk7CkBAIC01Myw3ICs1Myw3IEBAIHB1YmxpYzoKICAgdm9pZCBzZXRSZW1v
dGVOYW1lKGNoYXIgKnJlbW90ZU5hbWUpOwogICBHQm9vbCByZW1vdGVTZXJ2ZXJSdW5uaW5nKCk7
CiAgIHZvaWQgcmVtb3RlT3BlbihHb29TdHJpbmcgKmZpbGVOYW1lLCBpbnQgcGFnZSwgR0Jvb2wg
cmFpc2UpOwotICB2b2lkIHJlbW90ZU9wZW5BdERlc3QoR29vU3RyaW5nICpmaWxlTmFtZSwgVUdv
b1N0cmluZyAqZGVzdCwgR0Jvb2wgcmFpc2UpOworICB2b2lkIHJlbW90ZU9wZW5BdERlc3QoR29v
U3RyaW5nICpmaWxlTmFtZSwgR29vU3RyaW5nICpkZXN0LCBHQm9vbCByYWlzZSk7CiAgIHZvaWQg
cmVtb3RlUmVsb2FkKEdCb29sIHJhaXNlKTsKICAgdm9pZCByZW1vdGVSYWlzZSgpOwogICB2b2lk
IHJlbW90ZVF1aXQoKTsKZGlmZiAtdXAgL3Vzci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAx
LXI4L3hwZGYtMy4wMS1wb3BwbGVyL3hwZGYuY2MgLi94cGRmLmNjCi0tLSAvdXNyL3NyYy9kZWJ1
Zy9hcHAtdGV4dC94cGRmLTMuMDEtcjgveHBkZi0zLjAxLXBvcHBsZXIveHBkZi5jYwkyMDA2LTEy
LTE1IDEwOjI1OjI0LjAwMDAwMDAwMCArMDAwMAorKysgLi94cGRmLmNjCTIwMDctMDYtMjQgMDA6
NTU6NTAuMDAwMDAwMDAwICswMTAwCkBAIC0xMjcsNyArMTI3LDcgQEAgaW50IG1haW4oaW50IGFy
Z2MsIGNoYXIgKmFyZ3ZbXSkgewogICBYUERGQXBwICphcHA7CiAgIEdvb1N0cmluZyAqZmlsZU5h
bWU7CiAgIGludCBwZzsKLSAgVUdvb1N0cmluZyAqZGVzdE5hbWU7CisgIEdvb1N0cmluZyAqZGVz
dE5hbWU7CiAgIEdvb1N0cmluZyAqdXNlclBhc3N3b3JkU3RyLCAqb3duZXJQYXNzd29yZFN0cjsK
ICAgR0Jvb2wgb2s7CiAgIGludCBleGl0Q29kZTsKQEAgLTE0OCwyNiArMTQ4LDggQEAgaW50IG1h
aW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewogICB9CiAKICAgLy8gcmVhZCBjb25maWcgZmls
ZQotICBnbG9iYWxQYXJhbXMgPSBuZXcgR2xvYmFsUGFyYW1zKGNmZ0ZpbGVOYW1lKTsKKyAgZ2xv
YmFsUGFyYW1zID0gbmV3IEdsb2JhbFBhcmFtcygpOwogICAvL2dsb2JhbFBhcmFtcy0+c2V0dXBC
YXNlRm9udHMoTlVMTCk7Ci0gIGlmIChjb250VmlldykgewotICAgIGdsb2JhbFBhcmFtcy0+c2V0
Q29udGludW91c1ZpZXcoY29udFZpZXcpOwotICB9Ci0gIGlmIChwc0ZpbGVBcmdbMF0pIHsKLSAg
ICBnbG9iYWxQYXJhbXMtPnNldFBTRmlsZShwc0ZpbGVBcmcpOwotICB9Ci0gIGlmIChwYXBlclNp
emVbMF0pIHsKLSAgICBpZiAoIWdsb2JhbFBhcmFtcy0+c2V0UFNQYXBlclNpemUocGFwZXJTaXpl
KSkgewotICAgICAgZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIHBhcGVyIHNpemVcbiIpOwotICAg
IH0KLSAgfSBlbHNlIHsKLSAgICBpZiAocGFwZXJXaWR0aCkgewotICAgICAgZ2xvYmFsUGFyYW1z
LT5zZXRQU1BhcGVyV2lkdGgocGFwZXJXaWR0aCk7Ci0gICAgfQotICAgIGlmIChwYXBlckhlaWdo
dCkgewotICAgICAgZ2xvYmFsUGFyYW1zLT5zZXRQU1BhcGVySGVpZ2h0KHBhcGVySGVpZ2h0KTsK
LSAgICB9Ci0gIH0KICAgaWYgKGxldmVsMSkgewogICAgIGdsb2JhbFBhcmFtcy0+c2V0UFNMZXZl
bChwc0xldmVsMSk7CiAgIH0KQEAgLTE3OSwxMSArMTYxLDYgQEAgaW50IG1haW4oaW50IGFyZ2Ms
IGNoYXIgKmFyZ3ZbXSkgewogICAgICAgZnByaW50ZihzdGRlcnIsICJCYWQgJy1lb2wnIHZhbHVl
IG9uIGNvbW1hbmQgbGluZVxuIik7CiAgICAgfQogICB9Ci0gIGlmIChlbmFibGVUMWxpYlN0clsw
XSkgewotICAgIGlmICghZ2xvYmFsUGFyYW1zLT5zZXRFbmFibGVUMWxpYihlbmFibGVUMWxpYlN0
cikpIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAiQmFkICctdDFsaWInIHZhbHVlIG9uIGNvbW1h
bmQgbGluZVxuIik7Ci0gICAgfQotICB9CiAgIGlmIChlbmFibGVGcmVlVHlwZVN0clswXSkgewog
ICAgIGlmICghZ2xvYmFsUGFyYW1zLT5zZXRFbmFibGVGcmVlVHlwZShlbmFibGVGcmVlVHlwZVN0
cikpIHsKICAgICAgIGZwcmludGYoc3RkZXJyLCAiQmFkICctZnJlZXR5cGUnIHZhbHVlIG9uIGNv
bW1hbmQgbGluZVxuIik7CkBAIC0yMDQsMTIgKzE4MSw2IEBAIGludCBtYWluKGludCBhcmdjLCBj
aGFyICphcmd2W10pIHsKICAgLy8gY3JlYXRlIHRoZSBYUERGQXBwIG9iamVjdAogICBhcHAgPSBu
ZXcgWFBERkFwcCgmYXJnYywgYXJndik7CiAKLSAgLy8gdGhlIGluaXRpYWxab29tIHBhcmFtZXRl
ciBjYW4gYmUgc2V0IGluIGVpdGhlciB0aGUgY29uZmlnIGZpbGUgb3IKLSAgLy8gYXMgYW4gWCBy
ZXNvdXJjZSAob3IgY29tbWFuZCBsaW5lIGFyZykKLSAgaWYgKGFwcC0+Z2V0SW5pdGlhbFpvb20o
KSkgewotICAgIGdsb2JhbFBhcmFtcy0+c2V0SW5pdGlhbFpvb20oYXBwLT5nZXRJbml0aWFsWm9v
bSgpLT5nZXRDU3RyaW5nKCkpOwotICB9Ci0KICAgLy8gY2hlY2sgY29tbWFuZCBsaW5lCiAgIG9r
ID0gb2sgJiYgYXJnYyA+PSAxICYmIGFyZ2MgPD0gMzsKICAgaWYgKGRvUmVtb3RlUmVsb2FkKSB7
CkBAIC0yMzksNyArMjEwLDcgQEAgaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewog
ICBkZXN0TmFtZSA9IE5VTEw7CiAgIGlmIChhcmdjID09IDMpIHsKICAgICBpZiAoYXJndlsyXVsw
XSA9PSAnKycpIHsKLSAgICAgIGRlc3ROYW1lID0gbmV3IFVHb29TdHJpbmcoJmFyZ3ZbMl1bMV0p
OworICAgICAgZGVzdE5hbWUgPSBuZXcgR29vU3RyaW5nKCZhcmd2WzJdWzFdKTsKICAgICB9IGVs
c2UgewogICAgICAgcGcgPSBhdG9pKGFyZ3ZbMl0pOwogICAgICAgaWYgKHBnIDwgMCkgewpkaWZm
IC11cCAvdXNyL3NyYy9kZWJ1Zy9hcHAtdGV4dC94cGRmLTMuMDEtcjgveHBkZi0zLjAxLXBvcHBs
ZXIvWFBERkNvcmUuY2MgLi9YUERGQ29yZS5jYwotLS0gL3Vzci9zcmMvZGVidWcvYXBwLXRleHQv
eHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3BwbGVyL1hQREZDb3JlLmNjCTIwMDYtMTItMTUgMTA6
MjU6MjQuMDAwMDAwMDAwICswMDAwCisrKyAuL1hQREZDb3JlLmNjCTIwMDctMDYtMjQgMDA6NTc6
MDUuMDAwMDAwMDAwICswMTAwCkBAIC0xNDgsMTkgKzE0OCw3IEBAIFhQREZDb3JlOjpYUERGQ29y
ZShXaWRnZXQgc2hlbGxBLCBXaWRnZXQKICAgZHJhd0FyZWFGcmFtZSA9IE5VTEw7CiAgIGRyYXdB
cmVhID0gTlVMTDsKIAotICAvLyBnZXQgdGhlIGluaXRpYWwgem9vbSB2YWx1ZQotICBpbml0aWFs
Wm9vbSA9IGdsb2JhbFBhcmFtcy0+Z2V0SW5pdGlhbFpvb20oKTsKLSAgaWYgKCFpbml0aWFsWm9v
bS0+Y21wKCJwYWdlIikpIHsKLSAgICB6b29tID0gem9vbVBhZ2U7Ci0gIH0gZWxzZSBpZiAoIWlu
aXRpYWxab29tLT5jbXAoIndpZHRoIikpIHsKLSAgICB6b29tID0gem9vbVdpZHRoOwotICB9IGVs
c2UgewotICAgIHpvb20gPSBhdG9pKGluaXRpYWxab29tLT5nZXRDU3RyaW5nKCkpOwotICAgIGlm
ICh6b29tIDw9IDApIHsKICAgICAgIHpvb20gPSBkZWZab29tOwotICAgIH0KLSAgfQotICBkZWxl
dGUgaW5pdGlhbFpvb207CiAKICAgbGlua0FjdGlvbiA9IE5VTEw7CiAKQEAgLTQ0Miw3ICs0MzAs
NyBAQCBHQm9vbCBYUERGQ29yZTo6ZG9MaW5rKGludCBwZywgaW50IHgsIGluCiB2b2lkIFhQREZD
b3JlOjpkb0FjdGlvbihMaW5rQWN0aW9uICphY3Rpb24pIHsKICAgTGlua0FjdGlvbktpbmQga2lu
ZDsKICAgTGlua0Rlc3QgKmRlc3Q7Ci0gIFVHb29TdHJpbmcgKm5hbWVkRGVzdDsKKyAgR29vU3Ry
aW5nICpuYW1lZERlc3Q7CiAgIGNoYXIgKnM7CiAgIEdvb1N0cmluZyAqZmlsZU5hbWUsICpmaWxl
TmFtZTI7CiAgIEdvb1N0cmluZyAqY21kOwpAQCAtNDYyLDcgKzQ1MCw3IEBAIHZvaWQgWFBERkNv
cmU6OmRvQWN0aW9uKExpbmtBY3Rpb24gKmFjdGkKICAgICAgIGlmICgoZGVzdCA9ICgoTGlua0dv
VG8gKilhY3Rpb24pLT5nZXREZXN0KCkpKSB7CiAJZGVzdCA9IGRlc3QtPmNvcHkoKTsKICAgICAg
IH0gZWxzZSBpZiAoKG5hbWVkRGVzdCA9ICgoTGlua0dvVG8gKilhY3Rpb24pLT5nZXROYW1lZERl
c3QoKSkpIHsKLQluYW1lZERlc3QgPSBuZXcgVUdvb1N0cmluZygqbmFtZWREZXN0KTsKKwluYW1l
ZERlc3QgPSBuZXcgR29vU3RyaW5nKCpuYW1lZERlc3QpOwogICAgICAgfQogICAgIH0gZWxzZSB7
CiAgICAgICBkZXN0ID0gTlVMTDsKQEAgLTQ3MCw3ICs0NTgsNyBAQCB2b2lkIFhQREZDb3JlOjpk
b0FjdGlvbihMaW5rQWN0aW9uICphY3RpCiAgICAgICBpZiAoKGRlc3QgPSAoKExpbmtHb1RvUiAq
KWFjdGlvbiktPmdldERlc3QoKSkpIHsKIAlkZXN0ID0gZGVzdC0+Y29weSgpOwogICAgICAgfSBl
bHNlIGlmICgobmFtZWREZXN0ID0gKChMaW5rR29Ub1IgKilhY3Rpb24pLT5nZXROYW1lZERlc3Qo
KSkpIHsKLQluYW1lZERlc3QgPSBuZXcgVUdvb1N0cmluZygqbmFtZWREZXN0KTsKKwluYW1lZERl
c3QgPSBuZXcgR29vU3RyaW5nKCpuYW1lZERlc3QpOwogICAgICAgfQogICAgICAgcyA9ICgoTGlu
a0dvVG9SICopYWN0aW9uKS0+Z2V0RmlsZU5hbWUoKS0+Z2V0Q1N0cmluZygpOwogICAgICAgLy9+
IHRyYW5zbGF0ZSBwYXRoIG5hbWUgZm9yIFZNUyAoZGVhbCB3aXRoICcvJykKQEAgLTU0OCwxMiAr
NTM2LDggQEAgdm9pZCBYUERGQ29yZTo6ZG9BY3Rpb24oTGlua0FjdGlvbiAqYWN0aQogCiAgIC8v
IFVSSSBhY3Rpb24KICAgY2FzZSBhY3Rpb25VUkk6Ci0gICAgaWYgKCEoY21kID0gZ2xvYmFsUGFy
YW1zLT5nZXRVUkxDb21tYW5kKCkpKSB7CiAgICAgICBlcnJvcigtMSwgIk5vIHVybENvbW1hbmQg
ZGVmaW5lZCBpbiBjb25maWcgZmlsZSIpOwogICAgICAgYnJlYWs7Ci0gICAgfQotICAgIHJ1bkNv
bW1hbmQoY21kLCAoKExpbmtVUkkgKilhY3Rpb24pLT5nZXRVUkkoKSk7Ci0gICAgYnJlYWs7CiAK
ICAgLy8gTmFtZWQgYWN0aW9uCiAgIGNhc2UgYWN0aW9uTmFtZWQ6CkBAIC01ODUsNTIgKzU2OSw4
IEBAIHZvaWQgWFBERkNvcmU6OmRvQWN0aW9uKExpbmtBY3Rpb24gKmFjdGkKIAogICAvLyBNb3Zp
ZSBhY3Rpb24KICAgY2FzZSBhY3Rpb25Nb3ZpZToKLSAgICBpZiAoIShjbWQgPSBnbG9iYWxQYXJh
bXMtPmdldE1vdmllQ29tbWFuZCgpKSkgewogICAgICAgZXJyb3IoLTEsICJObyBtb3ZpZUNvbW1h
bmQgZGVmaW5lZCBpbiBjb25maWcgZmlsZSIpOwogICAgICAgYnJlYWs7Ci0gICAgfQotICAgIGlm
ICgoKExpbmtNb3ZpZSAqKWFjdGlvbiktPmhhc0Fubm90UmVmKCkpIHsKLSAgICAgIGRvYy0+Z2V0
WFJlZigpLT5mZXRjaCgoKExpbmtNb3ZpZSAqKWFjdGlvbiktPmdldEFubm90UmVmKCktPm51bSwK
LQkJCSAgICAoKExpbmtNb3ZpZSAqKWFjdGlvbiktPmdldEFubm90UmVmKCktPmdlbiwKLQkJCSAg
ICAmbW92aWVBbm5vdCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8vfiBuZWVkIHRvIHVzZSB0aGUg
Y29ycmVjdCBwYWdlIG51bSBoZXJlCi0gICAgICBkb2MtPmdldENhdGFsb2coKS0+Z2V0UGFnZSh0
b3BQYWdlKS0+Z2V0QW5ub3RzKCZvYmoxKTsKLSAgICAgIGlmIChvYmoxLmlzQXJyYXkoKSkgewot
CWZvciAoaSA9IDA7IGkgPCBvYmoxLmFycmF5R2V0TGVuZ3RoKCk7ICsraSkgewotCSAgaWYgKG9i
ajEuYXJyYXlHZXQoaSwgJm1vdmllQW5ub3QpLT5pc0RpY3QoKSkgewotCSAgICBpZiAobW92aWVB
bm5vdC5kaWN0TG9va3VwKCJTdWJ0eXBlIiwgJm9iajIpLT5pc05hbWUoIk1vdmllIikpIHsKLQkg
ICAgICBvYmoyLmZyZWUoKTsKLQkgICAgICBicmVhazsKLQkgICAgfQotCSAgICBvYmoyLmZyZWUo
KTsKLQkgIH0KLQkgIG1vdmllQW5ub3QuZnJlZSgpOwotCX0KLQlvYmoxLmZyZWUoKTsKLSAgICAg
IH0KLSAgICB9Ci0gICAgaWYgKG1vdmllQW5ub3QuaXNEaWN0KCkpIHsKLSAgICAgIGlmIChtb3Zp
ZUFubm90LmRpY3RMb29rdXAoIk1vdmllIiwgJm9iajEpLT5pc0RpY3QoKSkgewotCWlmIChvYmox
LmRpY3RMb29rdXAoIkYiLCAmb2JqMikpIHsKLQkgIGlmICgoZmlsZU5hbWUgPSBMaW5rQWN0aW9u
OjpnZXRGaWxlU3BlY05hbWUoJm9iajIpKSkgewotCSAgICBpZiAoIWlzQWJzb2x1dGVQYXRoKGZp
bGVOYW1lLT5nZXRDU3RyaW5nKCkpKSB7Ci0JICAgICAgZmlsZU5hbWUyID0gYXBwZW5kVG9QYXRo
KAotCQkJICAgICAgZ3JhYlBhdGgoZG9jLT5nZXRGaWxlTmFtZSgpLT5nZXRDU3RyaW5nKCkpLAot
CQkJICAgICAgZmlsZU5hbWUtPmdldENTdHJpbmcoKSk7Ci0JICAgICAgZGVsZXRlIGZpbGVOYW1l
OwotCSAgICAgIGZpbGVOYW1lID0gZmlsZU5hbWUyOwotCSAgICB9Ci0JICAgIHJ1bkNvbW1hbmQo
Y21kLCBmaWxlTmFtZSk7Ci0JICAgIGRlbGV0ZSBmaWxlTmFtZTsKLQkgIH0KLQkgIG9iajIuZnJl
ZSgpOwotCX0KLQlvYmoxLmZyZWUoKTsKLSAgICAgIH0KLSAgICB9Ci0gICAgbW92aWVBbm5vdC5m
cmVlKCk7Ci0gICAgYnJlYWs7CiAKICAgLy8gdW5rbm93biBhY3Rpb24gdHlwZQogICBjYXNlIGFj
dGlvblVua25vd246CmRpZmYgLXVwIC91c3Ivc3JjL2RlYnVnL2FwcC10ZXh0L3hwZGYtMy4wMS1y
OC94cGRmLTMuMDEtcG9wcGxlci9YUERGVmlld2VyLmNjIC4vWFBERlZpZXdlci5jYwotLS0gL3Vz
ci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3BwbGVyL1hQREZW
aWV3ZXIuY2MJMjAwNi0xMi0xNSAxMDoyNToyNC4wMDAwMDAwMDAgKzAwMDAKKysrIC4vWFBERlZp
ZXdlci5jYwkyMDA3LTA2LTI0IDAwOjU3OjI4LjAwMDAwMDAwMCArMDEwMApAQCAtMTExLDcgKzEx
MSw3IEBAIHN0YXRpYyBab29tTWVudUluZm8gem9vbU1lbnVJbmZvW25ab29tTWUKIC8vLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiAKIFhQREZWaWV3ZXI6OlhQREZWaWV3ZXIoWFBERkFwcCAqYXBwQSwgR29vU3Ry
aW5nICpmaWxlTmFtZSwKLQkJICAgICAgIGludCBwYWdlQSwgVUdvb1N0cmluZyAqZGVzdE5hbWUs
CisJCSAgICAgICBpbnQgcGFnZUEsIEdvb1N0cmluZyAqZGVzdE5hbWUsCiAJCSAgICAgICBHb29T
dHJpbmcgKm93bmVyUGFzc3dvcmQsIEdvb1N0cmluZyAqdXNlclBhc3N3b3JkKSB7CiAgIExpbmtE
ZXN0ICpkZXN0OwogICBpbnQgcGc7CkBAIC0xODUsNyArMTg1LDcgQEAgWFBERlZpZXdlcjo6flhQ
REZWaWV3ZXIoKSB7CiAjZW5kaWYKIH0KIAotdm9pZCBYUERGVmlld2VyOjpvcGVuKEdvb1N0cmlu
ZyAqZmlsZU5hbWUsIGludCBwYWdlQSwgVUdvb1N0cmluZyAqZGVzdE5hbWUpIHsKK3ZvaWQgWFBE
RlZpZXdlcjo6b3BlbihHb29TdHJpbmcgKmZpbGVOYW1lLCBpbnQgcGFnZUEsIEdvb1N0cmluZyAq
ZGVzdE5hbWUpIHsKICAgTGlua0Rlc3QgKmRlc3Q7CiAgIGludCBwZzsKICAgZG91YmxlIHo7CkBA
IC0yNjcsNyArMjY3LDcgQEAgdm9pZCBYUERGVmlld2VyOjpkaXNwbGF5RGVzdChMaW5rRGVzdCAq
ZAogICBjb3JlLT5kaXNwbGF5RGVzdChkZXN0LCB6b29tQSwgcm90YXRlQSwgYWRkVG9IaXN0KTsK
IH0KIAotdm9pZCBYUERGVmlld2VyOjpnZXRQYWdlQW5kRGVzdChpbnQgcGFnZUEsIFVHb29TdHJp
bmcgKmRlc3ROYW1lLAordm9pZCBYUERGVmlld2VyOjpnZXRQYWdlQW5kRGVzdChpbnQgcGFnZUEs
IEdvb1N0cmluZyAqZGVzdE5hbWUsCiAJCQkJaW50ICpwYWdlT3V0LCBMaW5rRGVzdCAqKmRlc3RP
dXQpIHsKICAgUmVmIHBhZ2VSZWY7CiAKQEAgLTIyOTksMTYgKzIyOTksNiBAQCB2b2lkIFhQREZW
aWV3ZXI6OmluaXRQcmludERpYWxvZygpIHsKICAgWHRTZXRBcmcoYXJnc1tuXSwgWG1OY2FuY2Vs
QnV0dG9uLCBjYW5jZWxCdG4pOyArK247CiAgIFh0U2V0VmFsdWVzKHByaW50RGlhbG9nLCBhcmdz
LCBuKTsKIAotICAvLy0tLS0tIGluaXRpYWwgdmFsdWVzCi0gIGlmICgocHNGaWxlTmFtZSA9IGds
b2JhbFBhcmFtcy0+Z2V0UFNGaWxlKCkpKSB7Ci0gICAgaWYgKHBzRmlsZU5hbWUtPmdldENoYXIo
MCkgPT0gJ3wnKSB7Ci0gICAgICBYbVRleHRGaWVsZFNldFN0cmluZyhwcmludENtZFRleHQsCi0J
CQkgICBwc0ZpbGVOYW1lLT5nZXRDU3RyaW5nKCkgKyAxKTsKLSAgICB9IGVsc2UgewotICAgICAg
WG1UZXh0RmllbGRTZXRTdHJpbmcocHJpbnRGaWxlVGV4dCwgcHNGaWxlTmFtZS0+Z2V0Q1N0cmlu
ZygpKTsKLSAgICB9Ci0gICAgZGVsZXRlIHBzRmlsZU5hbWU7Ci0gIH0KIH0KIAogdm9pZCBYUERG
Vmlld2VyOjpzZXR1cFByaW50RGlhbG9nKCkgewpAQCAtMjMxOCwzNCArMjMwOCwxMCBAQCB2b2lk
IFhQREZWaWV3ZXI6OnNldHVwUHJpbnREaWFsb2coKSB7CiAgIGNoYXIgKnA7CiAKICAgZG9jID0g
Y29yZS0+Z2V0RG9jKCk7Ci0gIHBzRmlsZU5hbWUgPSBnbG9iYWxQYXJhbXMtPmdldFBTRmlsZSgp
OwotICBpZiAoIXBzRmlsZU5hbWUgfHwgcHNGaWxlTmFtZS0+Z2V0Q2hhcigwKSA9PSAnfCcpIHsK
LSAgICBwZGZGaWxlTmFtZSA9IGRvYy0+Z2V0RmlsZU5hbWUoKTsKLSAgICBwID0gcGRmRmlsZU5h
bWUtPmdldENTdHJpbmcoKSArIHBkZkZpbGVOYW1lLT5nZXRMZW5ndGgoKSAtIDQ7Ci0gICAgaWYg
KCFzdHJjbXAocCwgIi5wZGYiKSB8fCAhc3RyY21wKHAsICIuUERGIikpIHsKLSAgICAgIHBzRmls
ZU5hbWUyID0gbmV3IEdvb1N0cmluZyhwZGZGaWxlTmFtZS0+Z2V0Q1N0cmluZygpLAotCQkJCXBk
ZkZpbGVOYW1lLT5nZXRMZW5ndGgoKSAtIDQpOwotICAgIH0gZWxzZSB7Ci0gICAgICBwc0ZpbGVO
YW1lMiA9IHBkZkZpbGVOYW1lLT5jb3B5KCk7Ci0gICAgfQotICAgIHBzRmlsZU5hbWUyLT5hcHBl
bmQoIi5wcyIpOwotICAgIFhtVGV4dEZpZWxkU2V0U3RyaW5nKHByaW50RmlsZVRleHQsIHBzRmls
ZU5hbWUyLT5nZXRDU3RyaW5nKCkpOwotICAgIGRlbGV0ZSBwc0ZpbGVOYW1lMjsKLSAgfQotICBp
ZiAocHNGaWxlTmFtZSAmJiBwc0ZpbGVOYW1lLT5nZXRDaGFyKDApID09ICd8JykgewotICAgIFht
VG9nZ2xlQnV0dG9uU2V0U3RhdGUocHJpbnRXaXRoQ21kQnRuLCBUcnVlLCBGYWxzZSk7Ci0gICAg
WG1Ub2dnbGVCdXR0b25TZXRTdGF0ZShwcmludFRvRmlsZUJ0biwgRmFsc2UsIEZhbHNlKTsKLSAg
ICBYdFZhU2V0VmFsdWVzKHByaW50Q21kVGV4dCwgWG1Oc2Vuc2l0aXZlLCBUcnVlLCBOVUxMKTsK
LSAgICBYdFZhU2V0VmFsdWVzKHByaW50RmlsZVRleHQsIFhtTnNlbnNpdGl2ZSwgRmFsc2UsIE5V
TEwpOwotICB9IGVsc2UgewogICAgIFhtVG9nZ2xlQnV0dG9uU2V0U3RhdGUocHJpbnRXaXRoQ21k
QnRuLCBGYWxzZSwgRmFsc2UpOwogICAgIFhtVG9nZ2xlQnV0dG9uU2V0U3RhdGUocHJpbnRUb0Zp
bGVCdG4sIFRydWUsIEZhbHNlKTsKICAgICBYdFZhU2V0VmFsdWVzKHByaW50Q21kVGV4dCwgWG1O
c2Vuc2l0aXZlLCBGYWxzZSwgTlVMTCk7CiAgICAgWHRWYVNldFZhbHVlcyhwcmludEZpbGVUZXh0
LCBYbU5zZW5zaXRpdmUsIFRydWUsIE5VTEwpOwotICB9Ci0gIGlmIChwc0ZpbGVOYW1lKSB7Ci0g
ICAgZGVsZXRlIHBzRmlsZU5hbWU7Ci0gIH0KIAogICBzcHJpbnRmKGJ1ZiwgIiVkIiwgZG9jLT5n
ZXROdW1QYWdlcygpKTsKICAgWG1UZXh0RmllbGRTZXRTdHJpbmcocHJpbnRGaXJzdFBhZ2UsICIx
Iik7CkBAIC0yNDE5LDExICsyMzg1LDExIEBAIHZvaWQgWFBERlZpZXdlcjo6cHJpbnRQcmludENi
ayhXaWRnZXQgd2kKICAgfQogCiAgIHBzT3V0ID0gbmV3IFBTT3V0cHV0RGV2KHBzRmlsZU5hbWUt
PmdldENTdHJpbmcoKSwgZG9jLT5nZXRYUmVmKCksCi0JCQkgIGRvYy0+Z2V0Q2F0YWxvZygpLCBm
aXJzdFBhZ2UsIGxhc3RQYWdlLAotCQkJICBwc01vZGVQUyk7CisJCQkgIGRvYy0+Z2V0Q2F0YWxv
ZygpLCBOVUxMLCBmaXJzdFBhZ2UsIGxhc3RQYWdlLAorCQkJICBwc01vZGVQUywgMCwgMCwgZ0Zh
bHNlLCAwLCAwLCAwLCAwLCBnRmFsc2UsIGdGYWxzZSk7CiAgIGlmIChwc091dC0+aXNPaygpKSB7
CiAgICAgZG9jLT5kaXNwbGF5UGFnZXMocHNPdXQsIGZpcnN0UGFnZSwgbGFzdFBhZ2UsIDcyLCA3
MiwKLQkJICAgICAgMCwgZ1RydWUsIGdsb2JhbFBhcmFtcy0+Z2V0UFNDcm9wKCksIGdGYWxzZSk7
CisJCSAgICAgIDAsIGdUcnVlLCBnRmFsc2UsIGdGYWxzZSk7CiAgIH0KICAgZGVsZXRlIHBzT3V0
OwogICBkZWxldGUgcHNGaWxlTmFtZTsKZGlmZiAtdXAgL3Vzci9zcmMvZGVidWcvYXBwLXRleHQv
eHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3BwbGVyL1hQREZWaWV3ZXIuaCAuL1hQREZWaWV3ZXIu
aAotLS0gL3Vzci9zcmMvZGVidWcvYXBwLXRleHQveHBkZi0zLjAxLXI4L3hwZGYtMy4wMS1wb3Bw
bGVyL1hQREZWaWV3ZXIuaAkyMDA2LTEyLTE1IDEwOjI1OjI0LjAwMDAwMDAwMCArMDAwMAorKysg
Li9YUERGVmlld2VyLmgJMjAwNy0wNi0yNCAwMDo0MjoxNi4wMDAwMDAwMDAgKzAxMDAKQEAgLTQ4
LDEyICs0OCwxMiBAQCBjbGFzcyBYUERGVmlld2VyIHsKIHB1YmxpYzoKIAogICBYUERGVmlld2Vy
KFhQREZBcHAgKmFwcEEsIEdvb1N0cmluZyAqZmlsZU5hbWUsCi0JICAgICBpbnQgcGFnZUEsIFVH
b29TdHJpbmcgKmRlc3ROYW1lLAorCSAgICAgaW50IHBhZ2VBLCBHb29TdHJpbmcgKmRlc3ROYW1l
LAogCSAgICAgR29vU3RyaW5nICpvd25lclBhc3N3b3JkLCBHb29TdHJpbmcgKnVzZXJQYXNzd29y
ZCk7CiAgIEdCb29sIGlzT2soKSB7IHJldHVybiBvazsgfQogICB+WFBERlZpZXdlcigpOwogCi0g
IHZvaWQgb3BlbihHb29TdHJpbmcgKmZpbGVOYW1lLCBpbnQgcGFnZUEsIFVHb29TdHJpbmcgKmRl
c3ROYW1lKTsKKyAgdm9pZCBvcGVuKEdvb1N0cmluZyAqZmlsZU5hbWUsIGludCBwYWdlQSwgR29v
U3RyaW5nICpkZXN0TmFtZSk7CiAgIHZvaWQgY2xlYXIoKTsKICAgdm9pZCByZWxvYWRGaWxlKCk7
CiAKQEAgLTY4LDcgKzY4LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICAgICBHQm9vbCBz
Y3JvbGxUb1RvcCwgR0Jvb2wgYWRkVG9IaXN0KTsKICAgdm9pZCBkaXNwbGF5RGVzdChMaW5rRGVz
dCAqZGVzdCwgZG91YmxlIHpvb21BLCBpbnQgcm90YXRlQSwKIAkJICAgR0Jvb2wgYWRkVG9IaXN0
KTsKLSAgdm9pZCBnZXRQYWdlQW5kRGVzdChpbnQgcGFnZUEsIFVHb29TdHJpbmcgKmRlc3ROYW1l
LAorICB2b2lkIGdldFBhZ2VBbmREZXN0KGludCBwYWdlQSwgR29vU3RyaW5nICpkZXN0TmFtZSwK
IAkJICAgICAgaW50ICpwYWdlT3V0LCBMaW5rRGVzdCAqKmRlc3RPdXQpOwogCiAgIC8vLS0tLS0g
YWN0aW9ucwo=
</data>        

          </attachment>
    </bug>

</bugzilla>