Bug#712269: [tvtime] cppcheck tool discovered same severe errors in the code

triniton adam <[email protected]> Sat, 15 Jun 2013 13:30:33 +0000
Newsgroups gmane.comp.video.tvtime.devel
Message-ID <CAPuGpVxsxk7tJ9nsORRW9+=V3qgZUU5oc40L2gQvGYTuUhpLhA@mail.gmail.com>
--001a1133479437eb7c04df315ed3
Content-Type: multipart/alternative; boundary=001a1133479437eb7904df315ed1

--001a1133479437eb7904df315ed1
Content-Type: text/plain; charset=ISO-8859-1

Proposed patch for [tvtime] cppcheck tool discovered same errors in the
code:

intl/localcharset.c:
    - fix common realloc mistake: buffer nulled but not freed upon failure.

intl/localealias.c:
    - fix resource leak

plugins/kdetv_greedyh.c:
plugins/kdetv_tomsmocomp.c:
    - fix buffer is accessed out of bounds.

src/commands.c:
    - fix variable 'curname' is reassigned a value before the old one has
been used.

src/leetft.c:
    - fix memory leak.

src/station.c
    - fix dangerous usage of 'filename' (strncpy doesn't always
null-terminate it).
    - fix dangerous usage of strncat - 3rd parameter is the maximum number
of characters to append.

src/tvtime.c
    - fix memory leak.
    - fix the buffer may not be null-terminated after the call to strncpy().

src/tvtimeconf.c
    - fix resource leak.
    - fix the buffer may not be null-terminated after the call to strncpy().

src/utils.c
    - fix resource leak.

--001a1133479437eb7904df315ed1
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Proposed patch for [tvtime] cppcheck tool discovered same =
errors in the code:<br><br>intl/localcharset.c:<br>=A0=A0=A0 - fix common r=
ealloc mistake: buffer nulled but not freed upon failure.<br><br>intl/local=
ealias.c:<br>
=A0=A0=A0 - fix resource leak<br><br>plugins/kdetv_greedyh.c:<br>plugins/kd=
etv_tomsmocomp.c:<br>=A0=A0=A0 - fix buffer is accessed out of bounds.<br><=
br>src/commands.c:<br>=A0=A0=A0 - fix variable &#39;curname&#39; is reassig=
ned a value before the old one has been used.<br>
<br>src/leetft.c:<br>=A0=A0=A0 - fix memory leak.<br><br>src/station.c<br>=
=A0=A0=A0 - fix dangerous usage of &#39;filename&#39; (strncpy doesn&#39;t =
always null-terminate it).<br>=A0=A0=A0 - fix dangerous usage of strncat - =
3rd parameter is the maximum number of characters to append.<br>
<br>src/tvtime.c<br>=A0=A0=A0 - fix memory leak.<br>=A0=A0=A0 - fix the buf=
fer may not be null-terminated after the call to strncpy().<br><br>src/tvti=
meconf.c<br>=A0=A0=A0 - fix resource leak.<br>=A0=A0=A0 - fix the buffer ma=
y not be null-terminated after the call to strncpy().<br>
<br>src/utils.c<br>=A0=A0=A0 - fix resource leak.<br><br><br><br><br><br><b=
r><br><br><br></div>

--001a1133479437eb7904df315ed1--
--001a1133479437eb7c04df315ed3
Content-Type: application/octet-stream; name="cppcheck.diff"
Content-Disposition: attachment; filename="cppcheck.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hhyuethn0

SW5kZXg6IHR2dGltZS0xLjAuMi9pbnRsL2xvY2FsY2hhcnNldC5jCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2
dGltZS0xLjAuMi5vcmlnL2ludGwvbG9jYWxjaGFyc2V0LmMJMjAxMy0wNi0xNSAxMzowNDo1NC45
MjcwMjI2ODQgKzAwMDAKKysrIHR2dGltZS0xLjAuMi9pbnRsL2xvY2FsY2hhcnNldC5jCTIwMTMt
MDYtMTUgMTM6MDQ6NTQuOTE5MDIyNjg0ICswMDAwCkBAIC0xNDUsNiArMTQ1LDcgQEAKIAkgIGNo
YXIgYnVmMVs1MCsxXTsKIAkgIGNoYXIgYnVmMls1MCsxXTsKIAkgIGNoYXIgKnJlc19wdHIgPSBO
VUxMOworCSAgY2hhciAqcmVzX25ldywgKnJlc19wdHI7CiAJICBzaXplX3QgcmVzX3NpemUgPSAw
OwogCSAgc2l6ZV90IGwxLCBsMjsKIApAQCAtMTc4LDE0ICsxNzksMTYgQEAKIAkgICAgICBlbHNl
CiAJCXsKIAkJICByZXNfc2l6ZSArPSBsMSArIDEgKyBsMiArIDE7Ci0JCSAgcmVzX3B0ciA9IChj
aGFyICopIHJlYWxsb2MgKHJlc19wdHIsIHJlc19zaXplICsgMSk7CisJCSAgcmVzX25ldyA9IChj
aGFyICopIHJlYWxsb2MgKHJlc19wdHIsIHJlc19zaXplICsgMSk7CiAJCX0KLQkgICAgICBpZiAo
cmVzX3B0ciA9PSBOVUxMKQorCSAgICAgIGlmIChyZXNfbmV3ID09IE5VTEwpCiAJCXsKIAkJICAv
KiBPdXQgb2YgbWVtb3J5LiAqLworCQkgIGZyZWUocmVzX3B0cik7CiAJCSAgcmVzX3NpemUgPSAw
OwogCQkgIGJyZWFrOwogCQl9CisJICAgICAgcmVzX3B0ciA9IHJlc19uZXc7CiAJICAgICAgc3Ry
Y3B5IChyZXNfcHRyICsgcmVzX3NpemUgLSAobDIgKyAxKSAtIChsMSArIDEpLCBidWYxKTsKIAkg
ICAgICBzdHJjcHkgKHJlc19wdHIgKyByZXNfc2l6ZSAtIChsMiArIDEpLCBidWYyKTsKIAkgICAg
fQpJbmRleDogdHZ0aW1lLTEuMC4yL2ludGwvbG9jYWxlYWxpYXMuYwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSB0
dnRpbWUtMS4wLjIub3JpZy9pbnRsL2xvY2FsZWFsaWFzLmMJMjAxMy0wNi0xNSAxMzowNDo1NC45
MjcwMjI2ODQgKzAwMDAKKysrIHR2dGltZS0xLjAuMi9pbnRsL2xvY2FsZWFsaWFzLmMJMjAxMy0w
Ni0xNSAxMzowNDo1NC45MTkwMjI2ODQgKzAwMDAKQEAgLTMwMyw3ICszMDMsMTAgQEAKIAogCSAg
ICAgIGlmIChubWFwID49IG1heG1hcCkKIAkJaWYgKF9fYnVpbHRpbl9leHBlY3QgKGV4dGVuZF9h
bGlhc190YWJsZSAoKSwgMCkpCi0JCSAgcmV0dXJuIGFkZGVkOworCQkgIHsKKyAgICAgICAgICAg
ICAgICAgICBmY2xvc2UgKGZwKTsKKwkJICAgIHJldHVybiBhZGRlZDsKKwkJICB9CiAKIAkgICAg
ICBhbGlhc19sZW4gPSBzdHJsZW4gKGFsaWFzKSArIDE7CiAJICAgICAgdmFsdWVfbGVuID0gc3Ry
bGVuICh2YWx1ZSkgKyAxOwpAQCAtMzE2LDcgKzMxOSwxMCBAQAogCQkJCQk/IGFsaWFzX2xlbiAr
IHZhbHVlX2xlbiA6IDEwMjQpKTsKIAkJICBjaGFyICpuZXdfcG9vbCA9IChjaGFyICopIHJlYWxs
b2MgKHN0cmluZ19zcGFjZSwgbmV3X3NpemUpOwogCQkgIGlmIChuZXdfcG9vbCA9PSBOVUxMKQot
CQkgICAgcmV0dXJuIGFkZGVkOworCQkgICAgeworICAgICAgICAgICAgICAgICAgICAgZmNsb3Nl
IChmcCk7CisJCSAgICAgIHJldHVybiBhZGRlZDsKKwkJICAgIH0KIAogCQkgIGlmIChfX2J1aWx0
aW5fZXhwZWN0IChzdHJpbmdfc3BhY2UgIT0gbmV3X3Bvb2wsIDApKQogCQkgICAgewpJbmRleDog
dHZ0aW1lLTEuMC4yL3BsdWdpbnMva2RldHZfZ3JlZWR5aC5jCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2dGlt
ZS0xLjAuMi5vcmlnL3BsdWdpbnMva2RldHZfZ3JlZWR5aC5jCTIwMTMtMDYtMTUgMTM6MDQ6NTQu
OTI3MDIyNjg0ICswMDAwCisrKyB0dnRpbWUtMS4wLjIvcGx1Z2lucy9rZGV0dl9ncmVlZHloLmMJ
MjAxMy0wNi0xNSAxMzowNDo1NC45MTkwMjI2ODQgKzAwMDAKQEAgLTQwLDcgKzQwLDcgQEAKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aWR0aCwgaW50IGhl
aWdodCApCiB7CiAgICAgVERlaW50ZXJsYWNlSW5mbyBJbmZvOwotICAgIFRQaWN0dXJlIFBpY3R1
cmVbIDggXTsKKyAgICBUUGljdHVyZSBQaWN0dXJlWyBNQVhfUElDVFVSRV9ISVNUT1JZIF07CiAg
ICAgaW50IHN0cmlkZSA9ICh3aWR0aCoyKTsKICAgICBpbnQgaTsKIApJbmRleDogdHZ0aW1lLTEu
MC4yL3BsdWdpbnMva2RldHZfdG9tc21vY29tcC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2dGltZS0xLjAu
Mi5vcmlnL3BsdWdpbnMva2RldHZfdG9tc21vY29tcC5jCTIwMTMtMDYtMTUgMTM6MDQ6NTQuOTI3
MDIyNjg0ICswMDAwCisrKyB0dnRpbWUtMS4wLjIvcGx1Z2lucy9rZGV0dl90b21zbW9jb21wLmMJ
MjAxMy0wNi0xNSAxMzowNDo1NC45MTkwMjI2ODQgKzAwMDAKQEAgLTM5LDcgKzM5LDcgQEAKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB3aWR0aCwgaW50
IGhlaWdodCApCiB7CiAgICAgVERlaW50ZXJsYWNlSW5mbyBJbmZvOwotICAgIFRQaWN0dXJlIFBp
Y3R1cmVbIDggXTsKKyAgICBUUGljdHVyZSBQaWN0dXJlWyBNQVhfUElDVFVSRV9ISVNUT1JZIF07
CiAgICAgaW50IHN0cmlkZSA9ICh3aWR0aCoyKTsKICAgICBpbnQgaTsKIApJbmRleDogdHZ0aW1l
LTEuMC4yL3NyYy9jb21tYW5kcy5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2dGltZS0xLjAuMi5vcmlnL3Ny
Yy9jb21tYW5kcy5jCTIwMTMtMDYtMTUgMTM6MDQ6NTQuOTI3MDIyNjg0ICswMDAwCisrKyB0dnRp
bWUtMS4wLjIvc3JjL2NvbW1hbmRzLmMJMjAxMy0wNi0xNSAxMzowNDo1NC45MjMwMjI2ODQgKzAw
MDAKQEAgLTI0MDEsMTMgKzI0MDEsMTEgQEAKICAgICBjYXNlIFRWVElNRV9TRVRfSU5QVVRfV0lE
VEg6CiAgICAgICAgIGNtZC0+bmV3aW5wdXR3aWR0aCA9IGF0b2koIGFyZyApOwogICAgICAgICBp
ZiggY21kLT5vc2QgKSB7Ci0gICAgICAgICAgICBjb25zdCBjaGFyICpjdXJuYW1lID0gbWVudV9n
ZXRfbmFtZSggY21kLT5jdXJ1c2VybWVudSApOwogICAgICAgICAgICAgbWVudV90ICpzaGFycG1l
bnUgPSBjb21tYW5kc19nZXRfbWVudSggY21kLCAiaHJlcyIgKTsKICAgICAgICAgICAgIGNoYXIg
bWVzc2FnZVsgMTI4IF07CiAgICAgICAgICAgICBpbnQgbWF4dyA9IGNtZC0+dmlkaW4/IHZpZGVv
aW5wdXRfZ2V0X21heHdpZHRoKCBjbWQtPnZpZGluICkgOiAwOwogICAgICAgICAgICAgcmVzZXRf
aW5wdXR3aWR0aF9tZW51KCBzaGFycG1lbnUsIGNtZC0+bmV3aW5wdXR3aWR0aCwgbWF4dyApOwog
ICAgICAgICAgICAgY3VybmFtZSA9IG1lbnVfZ2V0X25hbWUoIGNtZC0+Y3VydXNlcm1lbnUgKTsK
LSAgICAgICAgICAgIGNvbW1hbmRzX3JlZnJlc2hfbWVudSggY21kICk7CiAgICAgICAgICAgICBz
bnByaW50ZiggbWVzc2FnZSwgc2l6ZW9mKCBtZXNzYWdlICksCiAgICAgICAgICAgICAgICAgICAg
ICAgXygiSG9yaXpvbnRhbCByZXNvbHV0aW9uIHdpbGwgYmUgJWQgcGl4ZWxzIG9uIHJlc3RhcnQu
IiksCiAgICAgICAgICAgICAgICAgICAgICAgY21kLT5uZXdpbnB1dHdpZHRoICk7CkluZGV4OiB0
dnRpbWUtMS4wLjIvc3JjL2xlZXRmdC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2dGltZS0xLjAuMi5vcmln
L3NyYy9sZWV0ZnQuYwkyMDEzLTA2LTE1IDEzOjA0OjU0LjkyNzAyMjY4NCArMDAwMAorKysgdHZ0
aW1lLTEuMC4yL3NyYy9sZWV0ZnQuYwkyMDEzLTA2LTE1IDEzOjA0OjU0LjkyMzAyMjY4NCArMDAw
MApAQCAtNzgsNiArNzgsNyBAQAogICAgIGVycm9yID0gRlRfTG9hZF9HbHlwaCggZm9udC0+ZmFj
ZSwgZ2x5cGhfaW5kZXgsIEZUX0xPQURfTk9fSElOVElORyApOwogICAgIGlmKCBlcnJvciApIHsK
ICAgICAgICAgZnByaW50Ziggc3RkZXJyLCAibGVldGZ0OiBDYW4ndCBsb2FkIGdseXBoICVsZFxu
IiwgKGxvbmcgaW50KSB3Y2hhciApOworICAgICAgICBmcmVlICggY3VyICk7CiAgICAgICAgIHJl
dHVybiAwOwogICAgIH0KICAgICAKSW5kZXg6IHR2dGltZS0xLjAuMi9zcmMvc3RhdGlvbi5jCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIHR2dGltZS0xLjAuMi5vcmlnL3NyYy9zdGF0aW9uLmMJMjAxMy0wNi0xNSAx
MzowNDo1NC45MjcwMjI2ODQgKzAwMDAKKysrIHR2dGltZS0xLjAuMi9zcmMvc3RhdGlvbi5jCTIw
MTMtMDYtMTUgMTM6MDQ6NTQuOTIzMDIyNjg0ICswMDAwCkBAIC0xMDMwLDggKzEwMzAsMTUgQEAK
IAogICAgIGlmKCAhcnAgKSByZXR1cm4gMDsKIAotICAgIHN0cm5jcHkoIGZpbGVuYW1lLCBnZXRl
bnYoICJIT01FIiApLCAyMzUgKTsKLSAgICBzdHJuY2F0KCBmaWxlbmFtZSwgIi8udHZ0aW1lL3N0
YXRpb25saXN0LnhtbCIsIDI1NSApOworICAgIHN0YXRpYyBjb25zdCBjaGFyIGNvbmZpZ19maWxl
bmFtZVtdID0gIi8udHZ0aW1lL3N0YXRpb25saXN0LnhtbCI7CisgICAgY29uc3QgY2hhciAqaG9t
ZSA9IGdldGVudiggIkhPTUUiICk7CisgICAgc2l6ZV90IGxlbiA9IHN0cmxlbiggaG9tZSApOwor
ICAgIGlmICggbGVuID4gc2l6ZW9mKCBmaWxlbmFtZSApIC0gc2l6ZW9mKCBjb25maWdfZmlsZW5h
bWUgKSApCisgICAgICAgICAgICBmcHJpbnRmKCBzdGRlcnIsICJzdGF0aW9uOiBDb3VsZCBub3Qg
Y3JlYXRlIG5ldyBjb25maWcgZmlsZS4gVGhlIGZpbGUgbmFtZSB3aWxsIGJlIHRvbyBsb25nLlxu
IiApOworICAgIGVsc2UgeworICAgICAgICBtZW1tb3ZlKCBmaWxlbmFtZSwgaG9tZSwgbGVuICk7
CisgICAgICAgIG1lbW1vdmUoIGZpbGVuYW1lICsgbGVuLCBjb25maWdfZmlsZW5hbWUsIHNpemVv
ZiggY29uZmlnX2ZpbGVuYW1lICkgKTsKKyAgICB9CiAKICAgICBkb2MgPSB4bWxQYXJzZUZpbGUo
IGZpbGVuYW1lICk7CiAgICAgaWYoICFkb2MgKSB7CkluZGV4OiB0dnRpbWUtMS4wLjIvc3JjL3R2
dGltZS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIHR2dGltZS0xLjAuMi5vcmlnL3NyYy90dnRpbWUuYwkyMDEz
LTA2LTE1IDEzOjA0OjU0LjkyNzAyMjY4NCArMDAwMAorKysgdHZ0aW1lLTEuMC4yL3NyYy90dnRp
bWUuYwkyMDEzLTA2LTE1IDEzOjA0OjU0LjkyMzAyMjY4NCArMDAwMApAQCAtMTMwMSw2ICsxMzAx
LDcgQEAKICAgICBwZXJmID0gcGVyZm9ybWFuY2VfbmV3KCBmaWVsZHRpbWUgKTsKICAgICBpZigg
IXBlcmYgKSB7CiAgICAgICAgIGxmcHJpbnRmKCBzdGRlcnIsIF8oIiVzOiBDYW5ub3QgYWxsb2Nh
dGUgbWVtb3J5LlxuIiksIGFyZ3ZbIDAgXSApOworICAgICAgICBmcmVlICggdHZ0aW1lKTsKICAg
ICAgICAgcmV0dXJuIDE7CiAgICAgfQogCkBAIC0xMzA5LDYgKzEzMTAsNyBAQAogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uZmlnX2dldF9udHNjX2NhYmxlX21vZGUoIGN0ICksIHZl
cmJvc2UgKTsKICAgICBpZiggIXN0YXRpb25tZ3IgKSB7CiAgICAgICAgIGxmcHJpbnRmKCBzdGRl
cnIsIF8oIiVzOiBDYW5ub3QgYWxsb2NhdGUgbWVtb3J5LlxuIiksIGFyZ3ZbIDAgXSApOworICAg
ICAgICBmcmVlICggdHZ0aW1lICk7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KICAgICBzdGF0
aW9uX3NldCggc3RhdGlvbm1nciwgY29uZmlnX2dldF9wcmV2X2NoYW5uZWwoIGN0ICkgKTsKQEAg
LTEzNjUsNiArMTM2Nyw3IEBACiAgICAgLyogU2V0IGlucHV0IHNpemUuICovCiAgICAgaWYoICFv
dXRwdXQtPnNldF9pbnB1dF9zaXplKCB3aWR0aCwgaGVpZ2h0ICkgKSB7CiAgICAgICAgIC8qIEZJ
WE1FOiBDbGVhbiB1cC4gKi8KKyAgICAgICAgZnJlZSAoIHR2dGltZSApOwogICAgICAgICByZXR1
cm4gMTsKICAgICB9CiAKQEAgLTE0MzIsNiArMTQzNSwxMSBAQAogICAgIGJsdWVmcmFtZSA9IG1h
bGxvYyggd2lkdGggKiBoZWlnaHQgKiAyICk7CiAgICAgaWYoICFjb2xvdXJiYXJzIHx8ICFzYXZl
ZnJhbWUgfHwgIWZhZGVmcmFtZSB8fCAhYmx1ZWZyYW1lICkgewogICAgICAgICBsZnByaW50Zigg
c3RkZXJyLCBfKCIlczogQ2Fubm90IGFsbG9jYXRlIG1lbW9yeS5cbiIpLCBhcmd2WyAwIF0gKTsK
KyAgICAgICAgZnJlZSggY29sb3VyYmFycyApOworICAgICAgICBmcmVlKCBzYXZlZnJhbWUgKTsK
KyAgICAgICAgZnJlZSggZmFkZWZyYW1lICk7CisgICAgICAgIGZyZWUoIGJsdWVmcmFtZSApOwor
ICAgICAgICBmcmVlKCB0dnRpbWUgKTsKICAgICAgICAgcmV0dXJuIDE7CiAgICAgfQogICAgIGJ1
aWxkX2NvbG91cmJhcnMoIGNvbG91cmJhcnMsIHdpZHRoLCBoZWlnaHQgKTsKQEAgLTI1NDcsNiAr
MjU1NSw3IEBACiAgICAgICogZmlsZSBpbiAiQyIgbG9jYWxlIGZvcm1hdC4KICAgICAgKi8KICAg
ICBzdHJuY3B5KCBwcmV2bG9jLCBzZXRsb2NhbGUoIExDX05VTUVSSUMsIE5VTEwgKSwgc2l6ZW9m
KCBwcmV2bG9jICkgKTsKKyAgICBwcmV2bG9jWyAyNTUgXSA9ICdcMCc7CiAgICAgc2V0bG9jYWxl
KCBMQ19OVU1FUklDLCAiQyIgKTsKICAgICBzbnByaW50ZiggbnVtYmVyLCA0LCAiJTIuMWYiLAog
ICAgICAgICAgICAgICBjb21tYW5kc19nZXRfb3ZlcnNjYW4oIGNvbW1hbmRzICkgKiAyLjAgKiAx
MDAuMCApOwpJbmRleDogdHZ0aW1lLTEuMC4yL3NyYy90dnRpbWVjb25mLmMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gdHZ0aW1lLTEuMC4yLm9yaWcvc3JjL3R2dGltZWNvbmYuYwkyMDEzLTA2LTE1IDEzOjA0OjU0
LjkyNzAyMjY4NCArMDAwMAorKysgdHZ0aW1lLTEuMC4yL3NyYy90dnRpbWVjb25mLmMJMjAxMy0w
Ni0xNSAxMzowNDo1NC45MjMwMjI2ODQgKzAwMDAKQEAgLTM5MSw2ICszOTEsNyBAQAogICAgICAg
ICAgICAgICogdGhlIGNvbmZpZyBmaWxlIGluICJDIiBsb2NhbGUgZm9ybWF0LgogICAgICAgICAg
ICAgICovCiAgICAgICAgICAgICBzdHJuY3B5KCBwcmV2bG9jLCBzZXRsb2NhbGUoIExDX05VTUVS
SUMsIE5VTEwgKSwgc2l6ZW9mIHByZXZsb2MgKTsKKyAgICAgICAgICAgIHByZXZsb2NbIDI1NSBd
ID0gJ1wwJzsKICAgICAgICAgICAgIHNldGxvY2FsZSggTENfTlVNRVJJQywgIkMiICk7CiAgICAg
ICAgICAgICBjdC0+b3ZlcnNjYW4gPSAoIGF0b2YoIGN1cnZhbCApIC8gMi4wICkgLyAxMDAuMDsK
ICAgICAgICAgICAgIGlmKCAhaXNub3JtYWwoIGN0LT5vdmVyc2NhbiApICkgewpAQCAtOTgzLDYg
Kzk4NCw3IEBACiAgICAgICAgIGlmKCBmaWZvZmQgPj0gMCApIHsKICAgICAgICAgICAgIGxmcHJp
bnRmKCBzdGRlcnIsCiAgICAgICAgICAgICAgICAgICAgICAgXygiQ2Fubm90IHJ1biB0d28gaW5z
dGFuY2VzIG9mIHR2dGltZSB3aXRoIHRoZSBzYW1lIGNvbmZpZ3VyYXRpb24uXG4iKSApOworICAg
ICAgICAgICAgY2xvc2UoIGZpZm9mZCApOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAg
IH0KICAgICAgICAgY2xvc2UoIGZpZm9mZCApOwpAQCAtMTE4Miw2ICsxMTg0LDcgQEAKICAgICAg
ICAgaWYoIGZpZm9mZCA+PSAwICkgewogICAgICAgICAgICAgbGZwcmludGYoIHN0ZGVyciwKICAg
ICAgICAgICAgICAgICAgICAgICBfKCJDYW5ub3QgdXBkYXRlIGNvbmZpZ3VyYXRpb24gd2hpbGUg
dHZ0aW1lIHJ1bm5pbmcuXG4iKSApOworICAgICAgICAgICAgY2xvc2UoIGZpZm9mZCApOwogICAg
ICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICAgICAgY2xvc2UoIGZpZm9mZCApOwpJ
bmRleDogdHZ0aW1lLTEuMC4yL3NyYy91dGlscy5jCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHR2dGltZS0xLjAu
Mi5vcmlnL3NyYy91dGlscy5jCTIwMTMtMDYtMTUgMTM6MDQ6NTQuOTI3MDIyNjg0ICswMDAwCisr
KyB0dnRpbWUtMS4wLjIvc3JjL3V0aWxzLmMJMjAxMy0wNi0xNSAxMzowNDo1NC45MjMwMjI2ODQg
KzAwMDAKQEAgLTEyNyw2ICsxMjcsNyBAQAogICAgICAgICAgICAgICAgIGNsb3NlZGlyKCB0ZW1w
X2RpciApOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgfQorICAgICAg
ICAgICAgY2xvc2VkaXIoIHRlbXBfZGlyICk7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAg
ICAgICAvKiBXZSBjcmVhdGVkIHRoZSBkaXJlY3RvcnksIG5vdyBmb3JjZSBpdCB0byBiZSBvd25l
ZCBieSB0aGUgdXNlci4gKi8K
--001a1133479437eb7c04df315ed3
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
--001a1133479437eb7c04df315ed3
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Tvtime-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tvtime-devel

--001a1133479437eb7c04df315ed3--