delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to djgpp-bounces using -f |
X-Recipient: | djgpp AT delorie DOT com |
Message-ID: | <558D3944.4070604@iki.fi> |
Date: | Fri, 26 Jun 2015 14:36:36 +0300 |
From: | "Andris Pavenis (andris DOT pavenis AT iki DOT fi)" <djgpp AT delorie DOT com> |
User-Agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 |
MIME-Version: | 1.0 |
To: | djgpp AT delorie DOT com |
Subject: | Problem with configure mktime() tests |
Reply-To: | djgpp AT delorie DOT com |
This is a multi-part message in MIME format. --------------010607070405030005070804 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Noticed that mktime() tests run from bash-2.05b configure script fails: - goes into infinite loop when regenerated with autoconf-2.59 and gets interrupted after 60 seconds due to use of alarm() in the test - fail also when generated by autoconf-2.68 See test program in attachment (configure generated by autoconf-2.68). Actual failing part of the test is spring_forward_gap() Andris --------------010607070405030005070804 Content-Type: text/plain; charset=UTF-8; name="mktime_test.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="mktime_test.c" LyogY29uZmRlZnMuaCAqLwojZGVmaW5lIFBBQ0tBR0VfTkFNRSAiYmFzaCIKI2RlZmluZSBQ QUNLQUdFX1RBUk5BTUUgImJhc2giCiNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIyLjA1YiIK I2RlZmluZSBQQUNLQUdFX1NUUklORyAiYmFzaCAyLjA1YiIKI2RlZmluZSBQQUNLQUdFX0JV R1JFUE9SVCAiYnVnLWJhc2hAZ251Lm9yZyIKI2RlZmluZSBQQUNLQUdFX1VSTCAiIgojZGVm aW5lIFVTSU5HX0JBU0hfTUFMTE9DIDEKI2RlZmluZSBBTElBUyAxCiNkZWZpbmUgUFVTSERf QU5EX1BPUEQgMQojZGVmaW5lIFJFU1RSSUNURURfU0hFTEwgMQojZGVmaW5lIFBST0NFU1Nf U1VCU1RJVFVUSU9OIDEKI2RlZmluZSBQUk9NUFRfU1RSSU5HX0RFQ09ERSAxCiNkZWZpbmUg U0VMRUNUX0NPTU1BTkQgMQojZGVmaW5lIEhFTFBfQlVJTFRJTiAxCiNkZWZpbmUgQVJSQVlf VkFSUyAxCiNkZWZpbmUgRFBBUkVOX0FSSVRITUVUSUMgMQojZGVmaW5lIEJSQUNFX0VYUEFO U0lPTiAxCiNkZWZpbmUgQ09NTUFORF9USU1JTkcgMQojZGVmaW5lIEVYVEVOREVEX0dMT0Ig MQojZGVmaW5lIENPTkRfQ09NTUFORCAxCiNkZWZpbmUgQVJJVEhfRk9SX0NPTU1BTkQgMQoj ZGVmaW5lIE5FVFdPUktfUkVESVJFQ1RJT05TIDEKI2RlZmluZSBQUk9HUkFNTUFCTEVfQ09N UExFVElPTiAxCiNkZWZpbmUgTUVNU0NSQU1CTEUgMQojZGVmaW5lIFNURENfSEVBREVSUyAx CiNkZWZpbmUgSEFWRV9TWVNfVFlQRVNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfU1RBVF9IIDEK I2RlZmluZSBIQVZFX1NURExJQl9IIDEKI2RlZmluZSBIQVZFX1NUUklOR19IIDEKI2RlZmlu ZSBIQVZFX01FTU9SWV9IIDEKI2RlZmluZSBIQVZFX1NUUklOR1NfSCAxCiNkZWZpbmUgSEFW RV9JTlRUWVBFU19IIDEKI2RlZmluZSBIQVZFX1NURElOVF9IIDEKI2RlZmluZSBIQVZFX1VO SVNURF9IIDEKI2RlZmluZSBfX0VYVEVOU0lPTlNfXyAxCiNkZWZpbmUgX0FMTF9TT1VSQ0Ug MQojZGVmaW5lIF9HTlVfU09VUkNFIDEKI2RlZmluZSBfUE9TSVhfUFRIUkVBRF9TRU1BTlRJ Q1MgMQojZGVmaW5lIF9UQU5ERU1fU09VUkNFIDEKI2RlZmluZSBSRUFETElORSAxCiNkZWZp bmUgSElTVE9SWSAxCiNkZWZpbmUgQkFOR19ISVNUT1JZIDEKI2RlZmluZSBfR05VX1NPVVJD RSAxCiNkZWZpbmUgSEFWRV9TVFJJTkdJWkUgMQojZGVmaW5lIEhBVkVfTE9OR19ET1VCTEVf V0lERVIgMQojZGVmaW5lIEhBVkVfTE9OR19ET1VCTEUgMQojZGVmaW5lIFBST1RPVFlQRVMg MQojZGVmaW5lIF9fUFJPVE9UWVBFUyAxCiNkZWZpbmUgSEFWRV9ESVJFTlRfSCAxCiNkZWZp bmUgVElNRV9XSVRIX1NZU19USU1FIDEKI2RlZmluZSBIQVZFX0lOVFRZUEVTX0ggMQojZGVm aW5lIEhBVkVfVU5JU1REX0ggMQojZGVmaW5lIEhBVkVfU1RETElCX0ggMQojZGVmaW5lIEhB VkVfU1REQVJHX0ggMQojZGVmaW5lIEhBVkVfTElNSVRTX0ggMQojZGVmaW5lIEhBVkVfU1RS SU5HX0ggMQojZGVmaW5lIEhBVkVfTUVNT1JZX0ggMQojZGVmaW5lIEhBVkVfTE9DQUxFX0gg MQojZGVmaW5lIEhBVkVfVEVSTUlPU19IIDEKI2RlZmluZSBIQVZFX0RMRkNOX0ggMQojZGVm aW5lIEhBVkVfU1REREVGX0ggMQojZGVmaW5lIEhBVkVfU1RESU5UX0ggMQojZGVmaW5lIEhB VkVfR1JQX0ggMQojZGVmaW5lIEhBVkVfU1RSSU5HU19IIDEKI2RlZmluZSBIQVZFX1NZU19G SUxFX0ggMQojZGVmaW5lIEhBVkVfU1lTX1JFU09VUkNFX0ggMQojZGVmaW5lIEhBVkVfU1lT X1BBUkFNX0ggMQojZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCiNkZWZpbmUgSEFWRV9TWVNf VElNRVNfSCAxCiNkZWZpbmUgSEFWRV9TWVNfV0FJVF9IIDEKI2RlZmluZSBIQVZFX05FVElO RVRfSU5fSCAxCiNkZWZpbmUgSEFWRV9BTExPQ0EgMQojZGVmaW5lIEdFVFBHUlBfVk9JRCAx CiNkZWZpbmUgSEFWRV9WUFJJTlRGIDEKI2RlZmluZSBIQVZFX0RPUFJOVCAxCiNkZWZpbmUg SEFWRV9TVFJDT0xMIDEKI2RlZmluZSBSRVRTSUdUWVBFIHZvaWQKI2RlZmluZSBIQVZFX01L RklGTyAxCiNkZWZpbmUgSEFWRV9EVVAyIDEKI2RlZmluZSBIQVZFX1NFTEVDVCAxCiNkZWZp bmUgSEFWRV9HRVREVEFCTEVTSVpFIDEKI2RlZmluZSBIQVZFX0dFVEdST1VQUyAxCiNkZWZp bmUgSEFWRV9HRVRIT1NUTkFNRSAxCiNkZWZpbmUgSEFWRV9HRVRQQUdFU0laRSAxCiNkZWZp bmUgSEFWRV9MU1RBVCAxCiNkZWZpbmUgSEFWRV9TQlJLIDEKI2RlZmluZSBIQVZFX0dFVFJM SU1JVCAxCiNkZWZpbmUgSEFWRV9HRVRSVVNBR0UgMQojZGVmaW5lIEhBVkVfR0VUVElNRU9G REFZIDEKI2RlZmluZSBIQVZFX1dBSVRQSUQgMQojZGVmaW5lIEhBVkVfVENHRVRQR1JQIDEK I2RlZmluZSBIQVZFX1JFQURMSU5LIDEKI2RlZmluZSBIQVZFX1JFTkFNRSAxCiNkZWZpbmUg SEFWRV9CQ09QWSAxCiNkZWZpbmUgSEFWRV9CWkVSTyAxCiNkZWZpbmUgSEFWRV9DT05GU1RS IDEKI2RlZmluZSBIQVZFX1NZU0NPTkYgMQojZGVmaW5lIEhBVkVfUEFUSENPTkYgMQojZGVm aW5lIEhBVkVfU0VURU5WIDEKI2RlZmluZSBIQVZFX1BVVEVOViAxCiNkZWZpbmUgSEFWRV9V TlNFVEVOViAxCiNkZWZpbmUgSEFWRV9TRVRMSU5FQlVGIDEKI2RlZmluZSBIQVZFX1NFVFZC VUYgMQojZGVmaW5lIEhBVkVfU0VUTE9DQUxFIDEKI2RlZmluZSBIQVZFX1NUUkNIUiAxCiNk ZWZpbmUgSEFWRV9UQ0dFVEFUVFIgMQojZGVmaW5lIEhBVkVfVU5BTUUgMQojZGVmaW5lIEhB VkVfVFpTRVQgMQojZGVmaW5lIEhBVkVfTUVNTU9WRSAxCiNkZWZpbmUgSEFWRV9UVFlOQU1F IDEKI2RlZmluZSBIQVZFX1RJTUVTIDEKI2RlZmluZSBIQVZFX1ZTTlBSSU5URiAxCiNkZWZp bmUgSEFWRV9TTlBSSU5URiAxCiNkZWZpbmUgSEFWRV9WQVNQUklOVEYgMQojZGVmaW5lIEhB VkVfQVNQUklOVEYgMQojZGVmaW5lIEhBVkVfRk5NQVRDSCAxCiNkZWZpbmUgSEFWRV9JU0FT Q0lJIDEKI2RlZmluZSBIQVZFX0lTQkxBTksgMQojZGVmaW5lIEhBVkVfSVNHUkFQSCAxCiNk ZWZpbmUgSEFWRV9JU1BSSU5UIDEKI2RlZmluZSBIQVZFX0lTU1BBQ0UgMQojZGVmaW5lIEhB VkVfSVNYRElHSVQgMQojZGVmaW5lIEhBVkVfR0VUQ1dEIDEKI2RlZmluZSBIQVZFX1NUUkNB U0VDTVAgMQojZGVmaW5lIEhBVkVfU1RSRVJST1IgMQojZGVmaW5lIEhBVkVfU1RSRlRJTUUg MQojZGVmaW5lIEhBVkVfU1RSUEJSSyAxCiNkZWZpbmUgSEFWRV9NRU1TRVQgMQojZGVmaW5l IEhBVkVfU1RSVE9EIDEKI2RlZmluZSBIQVZFX1NUUlRPTCAxCiNkZWZpbmUgSEFWRV9TVFJU T1VMIDEKI2RlZmluZSBIQVZFX1NUUlRPTEwgMQojZGVmaW5lIEhBVkVfU1RSVE9VTEwgMQoj ZGVmaW5lIEhBVkVfU1RSVE9JTUFYIDEKI2RlZmluZSBIQVZFX1NUUlRPVU1BWCAxCiNkZWZp bmUgSEFWRV9ERUNMX0NPTkZTVFIgMQojZGVmaW5lIEhBVkVfREVDTF9QUklOVEYgMQojZGVm aW5lIEhBVkVfREVDTF9TQlJLIDEKI2RlZmluZSBIQVZFX0RFQ0xfU1RSQ1BZIDEKI2RlZmlu ZSBIQVZFX0RFQ0xfU1RSU0lHTkFMIDAKI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9MRCAxCiNk ZWZpbmUgSEFWRV9ERUNMX1NUUlRPSU1BWCAxCiNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPTCAx CiNkZWZpbmUgSEFWRV9ERUNMX1NUUlRPTEwgMQojZGVmaW5lIEhBVkVfREVDTF9TVFJUT1VM IDEKI2RlZmluZSBIQVZFX0RFQ0xfU1RSVE9VTEwgMQojZGVmaW5lIEhBVkVfREVDTF9TVFJU T1VNQVggMQojZGVmaW5lIEhBVkVfU1lTX1RJTUVfSCAxCiNkZWZpbmUgSEFWRV9VTklTVERf SCAxCiNkZWZpbmUgSEFWRV9BTEFSTSAxCi8qIGVuZCBjb25mZGVmcy5oLiAgKi8KLyogVGVz dCBwcm9ncmFtIGZyb20gUGF1bCBFZ2dlcnQgYW5kIFRvbnkgTGVuZWlzLiAgKi8KI2lmZGVm IFRJTUVfV0lUSF9TWVNfVElNRQojIGluY2x1ZGUgPHN5cy90aW1lLmg+CiMgaW5jbHVkZSA8 dGltZS5oPgojZWxzZQojIGlmZGVmIEhBVkVfU1lTX1RJTUVfSAojICBpbmNsdWRlIDxzeXMv dGltZS5oPgojIGVsc2UKIyAgaW5jbHVkZSA8dGltZS5oPgojIGVuZGlmCiNlbmRpZgoKI2lu Y2x1ZGUgPGxpbWl0cy5oPgojaW5jbHVkZSA8c3RkbGliLmg+CgojaWZkZWYgSEFWRV9VTklT VERfSAojIGluY2x1ZGUgPHVuaXN0ZC5oPgojZW5kaWYKCiNpZm5kZWYgSEFWRV9BTEFSTQoj IGRlZmluZSBhbGFybShYKSAvKiBlbXB0eSAqLwojZW5kaWYKCi8qIFdvcmsgYXJvdW5kIHJl ZGVmaW5pdGlvbiB0byBycGxfcHV0ZW52IGJ5IG90aGVyIGNvbmZpZyB0ZXN0cy4gICovCiN1 bmRlZiBwdXRlbnYKCnN0YXRpYyB0aW1lX3QgdGltZV90X21heDsKc3RhdGljIHRpbWVfdCB0 aW1lX3RfbWluOwoKLyogVmFsdWVzIHdlJ2xsIHVzZSB0byBzZXQgdGhlIFRaIGVudmlyb25t ZW50IHZhcmlhYmxlLiAgKi8Kc3RhdGljIGNvbnN0IGNoYXIgKnR6X3N0cmluZ3NbXSA9IHsK ICAoY29uc3QgY2hhciAqKSAwLCAiVFo9R01UMCIsICJUWj1KU1QtOSIsCiAgIlRaPUVTVCsz RURUKzIsTTEwLjEuMC8wMDowMDowMCxNMi4zLjAvMDA6MDA6MDAiCn07CiNkZWZpbmUgTl9T VFJJTkdTIChzaXplb2YgKHR6X3N0cmluZ3MpIC8gc2l6ZW9mICh0el9zdHJpbmdzWzBdKSkK Ci8qIFJldHVybiAwIGlmIG1rdGltZSBmYWlscyB0byBjb252ZXJ0IGEgZGF0ZSBpbiB0aGUg c3ByaW5nLWZvcndhcmQgZ2FwLgogICBCYXNlZCBvbiBhIHByb2JsZW0gcmVwb3J0IGZyb20g QW5kcmVhcyBKYWVnZXIuICAqLwpzdGF0aWMgaW50CnNwcmluZ19mb3J3YXJkX2dhcCAoKQp7 CiAgLyogZ2xpYmMgKHVwIHRvIGFib3V0IDE5OTgtMTAtMDcpIGZhaWxlZCB0aGlzIHRlc3Qu ICovCiAgc3RydWN0IHRtIHRtOwoKICAvKiBVc2UgdGhlIHBvcnRhYmxlIFBPU0lYLjEgc3Bl Y2lmaWNhdGlvbiAiVFo9UFNUOFBEVCxNNC4xLjAsTTEwLjUuMCIKICAgICBpbnN0ZWFkIG9m ICJUWj1BbWVyaWNhL1ZhbmNvdXZlciIgaW4gb3JkZXIgdG8gZGV0ZWN0IHRoZSBidWcgZXZl bgogICAgIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBzdXBwb3J0IHRoZSBPbHNvbiBleHRlbnNp b24sIG9yIGRvbid0IGhhdmUgdGhlCiAgICAgZnVsbCB6b25laW5mbyB0YWJsZXMgaW5zdGFs bGVkLiAgKi8KICBwdXRlbnYgKChjaGFyKikgIlRaPVBTVDhQRFQsTTQuMS4wLE0xMC41LjAi KTsKCiAgdG0udG1feWVhciA9IDk4OwogIHRtLnRtX21vbiA9IDM7CiAgdG0udG1fbWRheSA9 IDU7CiAgdG0udG1faG91ciA9IDI7CiAgdG0udG1fbWluID0gMDsKICB0bS50bV9zZWMgPSAw OwogIHRtLnRtX2lzZHN0ID0gLTE7CiAgcmV0dXJuIG1rdGltZSAoJnRtKSAhPSAodGltZV90 KSAtMTsKfQoKc3RhdGljIGludApta3RpbWVfdGVzdDEgKHRpbWVfdCBub3cpCnsKICBzdHJ1 Y3QgdG0gKmx0OwogIHJldHVybiAhIChsdCA9IGxvY2FsdGltZSAoJm5vdykpIHx8IG1rdGlt ZSAobHQpID09IG5vdzsKfQoKc3RhdGljIGludApta3RpbWVfdGVzdCAodGltZV90IG5vdykK ewogIHJldHVybiAobWt0aW1lX3Rlc3QxIChub3cpCgkgICYmIG1rdGltZV90ZXN0MSAoKHRp bWVfdCkgKHRpbWVfdF9tYXggLSBub3cpKQoJICAmJiBta3RpbWVfdGVzdDEgKCh0aW1lX3Qp ICh0aW1lX3RfbWluICsgbm93KSkpOwp9CgpzdGF0aWMgaW50CmlyaXhfNl80X2J1ZyAoKQp7 CiAgLyogQmFzZWQgb24gY29kZSBmcm9tIEFyaWVsIEZhaWdvbi4gICovCiAgc3RydWN0IHRt IHRtOwogIHRtLnRtX3llYXIgPSA5NjsKICB0bS50bV9tb24gPSAzOwogIHRtLnRtX21kYXkg PSAwOwogIHRtLnRtX2hvdXIgPSAwOwogIHRtLnRtX21pbiA9IDA7CiAgdG0udG1fc2VjID0g MDsKICB0bS50bV9pc2RzdCA9IC0xOwogIG1rdGltZSAoJnRtKTsKICByZXR1cm4gdG0udG1f bW9uID09IDIgJiYgdG0udG1fbWRheSA9PSAzMTsKfQoKc3RhdGljIGludApiaWd0aW1lX3Rl c3QgKGludCBqKQp7CiAgc3RydWN0IHRtIHRtOwogIHRpbWVfdCBub3c7CiAgdG0udG1feWVh ciA9IHRtLnRtX21vbiA9IHRtLnRtX21kYXkgPSB0bS50bV9ob3VyID0gdG0udG1fbWluID0g dG0udG1fc2VjID0gajsKICBub3cgPSBta3RpbWUgKCZ0bSk7CiAgaWYgKG5vdyAhPSAodGlt ZV90KSAtMSkKICAgIHsKICAgICAgc3RydWN0IHRtICpsdCA9IGxvY2FsdGltZSAoJm5vdyk7 CiAgICAgIGlmICghIChsdAoJICAgICAmJiBsdC0+dG1feWVhciA9PSB0bS50bV95ZWFyCgkg ICAgICYmIGx0LT50bV9tb24gPT0gdG0udG1fbW9uCgkgICAgICYmIGx0LT50bV9tZGF5ID09 IHRtLnRtX21kYXkKCSAgICAgJiYgbHQtPnRtX2hvdXIgPT0gdG0udG1faG91cgoJICAgICAm JiBsdC0+dG1fbWluID09IHRtLnRtX21pbgoJICAgICAmJiBsdC0+dG1fc2VjID09IHRtLnRt X3NlYwoJICAgICAmJiBsdC0+dG1feWRheSA9PSB0bS50bV95ZGF5CgkgICAgICYmIGx0LT50 bV93ZGF5ID09IHRtLnRtX3dkYXkKCSAgICAgJiYgKChsdC0+dG1faXNkc3QgPCAwID8gLTEg OiAwIDwgbHQtPnRtX2lzZHN0KQoJCSAgPT0gKHRtLnRtX2lzZHN0IDwgMCA/IC0xIDogMCA8 IHRtLnRtX2lzZHN0KSkpKQoJcmV0dXJuIDA7CiAgICB9CiAgcmV0dXJuIDE7Cn0KCnN0YXRp YyBpbnQKeWVhcl8yMDUwX3Rlc3QgKCkKewogIC8qIFRoZSBjb3JyZWN0IGFuc3dlciBmb3Ig MjA1MC0wMi0wMSAwMDowMDowMCBpbiBQYWNpZmljIHRpbWUsCiAgICAgaWdub3JpbmcgbGVh cCBzZWNvbmRzLiAgKi8KICB1bnNpZ25lZCBsb25nIGludCBhbnN3ZXIgPSAyNTI3MzE1MjAw VUw7CgogIHN0cnVjdCB0bSB0bTsKICB0aW1lX3QgdDsKICB0bS50bV95ZWFyID0gMjA1MCAt IDE5MDA7CiAgdG0udG1fbW9uID0gMiAtIDE7CiAgdG0udG1fbWRheSA9IDE7CiAgdG0udG1f aG91ciA9IHRtLnRtX21pbiA9IHRtLnRtX3NlYyA9IDA7CiAgdG0udG1faXNkc3QgPSAtMTsK CiAgLyogVXNlIHRoZSBwb3J0YWJsZSBQT1NJWC4xIHNwZWNpZmljYXRpb24gIlRaPVBTVDhQ RFQsTTQuMS4wLE0xMC41LjAiCiAgICAgaW5zdGVhZCBvZiAiVFo9QW1lcmljYS9WYW5jb3V2 ZXIiIGluIG9yZGVyIHRvIGRldGVjdCB0aGUgYnVnIGV2ZW4KICAgICBvbiBzeXN0ZW1zIHRo YXQgZG9uJ3Qgc3VwcG9ydCB0aGUgT2xzb24gZXh0ZW5zaW9uLCBvciBkb24ndCBoYXZlIHRo ZQogICAgIGZ1bGwgem9uZWluZm8gdGFibGVzIGluc3RhbGxlZC4gICovCiAgcHV0ZW52ICgo Y2hhciopICJUWj1QU1Q4UERULE00LjEuMCxNMTAuNS4wIik7CgogIHQgPSBta3RpbWUgKCZ0 bSk7CgogIC8qIENoZWNrIHRoYXQgdGhlIHJlc3VsdCBpcyBlaXRoZXIgYSBmYWlsdXJlLCBv ciBjbG9zZSBlbm91Z2gKICAgICB0byB0aGUgY29ycmVjdCBhbnN3ZXIgdGhhdCB3ZSBjYW4g YXNzdW1lIHRoZSBkaXNjcmVwYW5jeSBpcwogICAgIGR1ZSB0byBsZWFwIHNlY29uZHMuICAq LwogIHJldHVybiAodCA9PSAodGltZV90KSAtMQoJICB8fCAoMCA8IHQgJiYgYW5zd2VyIC0g MTIwIDw9IHQgJiYgdCA8PSBhbnN3ZXIgKyAxMjApKTsKfQoKaW50Cm1haW4gKCkKewogIHRp bWVfdCB0LCBkZWx0YTsKICBpbnQgaSwgajsKCiAgLyogVGhpcyB0ZXN0IG1ha2VzIHNvbWUg YnVnZ3kgbWt0aW1lIGltcGxlbWVudGF0aW9ucyBsb29wLgogICAgIEdpdmUgdXAgYWZ0ZXIg NjAgc2Vjb25kczsgYSBta3RpbWUgc2xvd2VyIHRoYW4gdGhhdAogICAgIGlzbid0IHdvcnRo IHVzaW5nIGFueXdheS4gICovCiAgYWxhcm0gKDYwKTsKCiAgZm9yICg7OykKICAgIHsKICAg ICAgdCA9ICh0aW1lX3RfbWF4IDw8IDEpICsgMTsKICAgICAgaWYgKHQgPD0gdGltZV90X21h eCkKCWJyZWFrOwogICAgICB0aW1lX3RfbWF4ID0gdDsKICAgIH0KICB0aW1lX3RfbWluID0g LSAoKHRpbWVfdCkgfiAodGltZV90KSAwID09ICh0aW1lX3QpIC0xKSAtIHRpbWVfdF9tYXg7 CgogIGRlbHRhID0gdGltZV90X21heCAvIDk5NzsgLyogYSBzdWl0YWJsZSBwcmltZSBudW1i ZXIgKi8KICBmb3IgKGkgPSAwOyBpIDwgTl9TVFJJTkdTOyBpKyspCiAgICB7CiAgICAgIGlm ICh0el9zdHJpbmdzW2ldKQoJcHV0ZW52ICgoY2hhciopIHR6X3N0cmluZ3NbaV0pOwoKICAg ICAgZm9yICh0ID0gMDsgdCA8PSB0aW1lX3RfbWF4IC0gZGVsdGE7IHQgKz0gZGVsdGEpCglp ZiAoISBta3RpbWVfdGVzdCAodCkpCgkgIHJldHVybiAxOwogICAgICBpZiAoISAobWt0aW1l X3Rlc3QgKCh0aW1lX3QpIDEpCgkgICAgICYmIG1rdGltZV90ZXN0ICgodGltZV90KSAoNjAg KiA2MCkpCgkgICAgICYmIG1rdGltZV90ZXN0ICgodGltZV90KSAoNjAgKiA2MCAqIDI0KSkp KQoJcmV0dXJuIDE7CgogICAgICBmb3IgKGogPSAxOyA7IGogPDw9IDEpCglpZiAoISBiaWd0 aW1lX3Rlc3QgKGopKQoJICByZXR1cm4gMTsKCWVsc2UgaWYgKElOVF9NQVggLyAyIDwgaikK CSAgYnJlYWs7CiAgICAgIGlmICghIGJpZ3RpbWVfdGVzdCAoSU5UX01BWCkpCglyZXR1cm4g MTsKICAgIH0KICByZXR1cm4gISAoaXJpeF82XzRfYnVnICgpICYmIHNwcmluZ19mb3J3YXJk X2dhcCAoKSAmJiB5ZWFyXzIwNTBfdGVzdCAoKSk7Cn0K --------------010607070405030005070804--
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |