[PATCH] signalMainThread interceptor
"Felix Nawothnig" <[email protected]> Sun, 6 Sep 2009 04:55:16 +0200 (CEST)
| Newsgroups | gmane.comp.corba.omniorb.devel |
|---|---|
| Message-ID | <[email protected]> |
------=_20090906045516_12735 Content-Type: text/plain; charset=iso_8859_15 Content-Transfer-Encoding: 8bit Here we go... I had some spare time to kill (well. actually I now have this shiny embedded box sitting beside me and really wanted the feature :-) and decided to not wait for you to reply on the main list - so here is the implementation of the signalling callback as an interceptor. Feedback is welcome. Cheers, Felix ------=_20090906045516_12735 Content-Type: application/octet-stream; name="omniorb-4_1-signalMainThread_interceptor.diff" Content-Disposition: attachment; filename="omniorb-4_1-signalMainThread_interceptor.diff" Content-Transfer-Encoding: base64 SW5kZXg6IGRvYy90ZXgvb21uaU9SQi50ZXgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBkb2MvdGV4L29tbmlP UkIudGV4CShyZXZpc2lvbiA1OTE1KQ0KKysrIGRvYy90ZXgvb21uaU9SQi50ZXgJKHdvcmtpbmcg Y29weSkNCkBAIC01MzQ4LDcgKzUzNDgsMTggQEANCiBjaGFpbmluZyBpcyBwZXJmb3JtZWQgYnkg Y2FsbHMgdGhyb3VnaCB0aGUgXG9we2luZm9cX1Q6OnJ1bn0gbWV0aG9kLAogcmF0aGVyIHRoYW4g YnkgdmlzaXRpbmcgaW50ZXJjZXB0b3IgZnVuY3Rpb25zIGluIHR1cm4uCiAKK1xpdGVtW3NpZ25h bE1haW5UaHJlYWRdXG1ib3h7fVxcCislCitDYWxsZWQgd2hlbiB0aGUgT1JCIHNpZ25hbHMgdGhl IG1haW4gdGhyZWFkIHRvIGluZm9ybSBpdCB0aGF0IHdvcmsgaXMKK2F2YWlsYWJsZSAoaS5lLiBh biBpbmNvbWluZyByZXF1ZXN0KSBmb3IgYSBzZXJ2YW50IGFjdGl2YXRlZCBieSBhIAorUE9BIGlt cGxlbWVudGluZyB0aGUgTUFJTlxfVEhSRUFEXF9NT0RFTCBwb2xpY3kuIFRoZSBpbnRlcmNlcHRv ciAKK2Z1bmN0aW9uIG11c3QgY2FsbCB0aGUgXG9we2luZm9cX1Q6OnJ1bn0gbWV0aG9kIHRvIGFj dHVhbGx5IHRyaWdnZXIgCit0aGUgc2lnbmFsbGluZy4KIAorVGhlIGFwcGxpY2F0aW9uIGNhbiB1 c2UgdGhpcyBpbnRlcmNlcHRvciB0byBpbnRlZ3JhdGUgc2luZ2xlLXRocmVhZGVkIAorc2VydmFu dHMgaW50byBhIGZvcmVpZ24gZXZlbnQtbG9vcCBieSBtYXJzaGFsbGluZyBhbiBldmVudCBhZnRl ciAKK1xvcHtydW59IGhhcyBmaW5pc2hlZCBhbmQgY2FsbGluZyB0aGUgXG9we09SQjo6cGVyZm9y bVxfd29ya30gbWV0aG9kCitpbiB0aGUgZGlzcGF0Y2hlci4KIAogXGVuZHtkZXNjcmlwdGlvbn0K IApJbmRleDogaW5jbHVkZS9vbW5pT1JCNC9pbnRlcm5hbC9pbnRlcmNlcHRvcnMuaA0KPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQ0KLS0tIGluY2x1ZGUvb21uaU9SQjQvaW50ZXJuYWwvaW50ZXJjZXB0b3JzLmgJKHJldmlz aW9uIDU5MTUpDQorKysgaW5jbHVkZS9vbW5pT1JCNC9pbnRlcm5hbC9pbnRlcmNlcHRvcnMuaAko d29ya2luZyBjb3B5KQ0KQEAgLTgzLDYgKzgzLDcgQEANCiAgIHN0YXRpYyBfY29yZV9hdHRyIGVs bVQqIGNyZWF0ZVBvbGljeTsKICAgc3RhdGljIF9jb3JlX2F0dHIgZWxtVCogY3JlYXRlVGhyZWFk OwogICBzdGF0aWMgX2NvcmVfYXR0ciBlbG1UKiBhc3NpZ25VcGNhbGxUaHJlYWQ7CisgIHN0YXRp YyBfY29yZV9hdHRyIGVsbVQqIHNpZ25hbE1haW5UaHJlYWQ7CiAKICNkZWZpbmUgVklTSVRfRlVO Q1RJT04obmFtZSkgXAogICBzdGF0aWMgaW5saW5lIHZvaWQgdmlzaXQob21uaUludGVyY2VwdG9y czo6bmFtZSMjX1Q6OmluZm9fVCYgaW5mbykgeyBcCkluZGV4OiBpbmNsdWRlL29tbmlPUkI0L29t bmlJbnRlcmNlcHRvcnMuaA0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIGluY2x1ZGUvb21uaU9SQjQvb21uaUlu dGVyY2VwdG9ycy5oCShyZXZpc2lvbiA1OTE1KQ0KKysrIGluY2x1ZGUvb21uaU9SQjQvb21uaUlu dGVyY2VwdG9ycy5oCSh3b3JraW5nIGNvcHkpDQpAQCAtMzUwLDcgKzM1MCwyMSBAQA0KICAgICB2 b2lkIHJlbW92ZShpbnRlcmNlcHRGdW5jKTsKICAgfTsKIAorICAvLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KKyAgY2xhc3Mg c2lnbmFsTWFpblRocmVhZF9UIHsKKyAgcHVibGljOgorICAgIAorICAgIGNsYXNzIGluZm9fVCB7 CisgICAgcHVibGljOgorICAgICAgdmlydHVhbCB2b2lkIHJ1bigpID0gMDsKKyAgICB9OwogCisg ICAgdHlwZWRlZiB2b2lkICgqaW50ZXJjZXB0RnVuYykoaW5mb19UJiBpbmZvKTsKKworICAgIHZv aWQgYWRkKGludGVyY2VwdEZ1bmMpOworICAgIHZvaWQgcmVtb3ZlKGludGVyY2VwdEZ1bmMpOwor ICB9OworCiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLwogICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgZW5jb2RlSU9SX1QgICAgICAgICAg ICAgICAgZW5jb2RlSU9SOwpAQCAtMzY1LDYgKzM3OSw3IEBADQogICBjcmVhdGVQb2xpY3lfVCAg ICAgICAgICAgICBjcmVhdGVQb2xpY3k7CiAgIGNyZWF0ZVRocmVhZF9UICAgICAgICAgICAgIGNy ZWF0ZVRocmVhZDsKICAgYXNzaWduVXBjYWxsVGhyZWFkX1QgICAgICAgYXNzaWduVXBjYWxsVGhy ZWFkOworICBzaWduYWxNYWluVGhyZWFkX1QgICAgICAgICBzaWduYWxNYWluVGhyZWFkOwogCiAg IC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLwogICBmcmllbmQgY2xhc3Mgb21uaV9pbnRlcmNlcHRvcl9pbml0aWFsaXNlcjsK SW5kZXg6IHNyYy9saWIvb21uaU9SQi9vcmJjb3JlL2NvcmJhT3JiLmNjDQo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQot LS0gc3JjL2xpYi9vbW5pT1JCL29yYmNvcmUvY29yYmFPcmIuY2MJKHJldmlzaW9uIDU5MTUpDQor Kysgc3JjL2xpYi9vbW5pT1JCL29yYmNvcmUvY29yYmFPcmIuY2MJKHdvcmtpbmcgY29weSkNCkBA IC0zNjQsNiArMzY0LDggQEANCiAjaW5jbHVkZSA8b3JiUGFyYW1ldGVycy5oPgogI2luY2x1ZGUg PG9tbmlJZGVudGl0eS5oPgogI2luY2x1ZGUgPFNvY2tldENvbGxlY3Rpb24uaD4KKyNpbmNsdWRl IDxvbW5pT1JCNC9vbW5pSW50ZXJjZXB0b3JzLmg+CisjaW5jbHVkZSA8aW50ZXJjZXB0b3JzLmg+ CiAKICNpZmRlZiBIQVZFX1NJR05BTF9ICiAjICBpbmNsdWRlIDxzaWduYWwuaD4KQEAgLTY5Nyw2 ICs2OTksNDEgQEANCiAgIHJldHVybiB0aGVfb3JiOwogfQogCitPTU5JX05BTUVTUEFDRV9CRUdJ TihvbW5pKQorCitjbGFzcyBzaWduYWxJbmZvCisgIDogcHVibGljIG9tbmlJbnRlcmNlcHRvcnM6 OnNpZ25hbE1haW5UaHJlYWRfVDo6aW5mb19UIHsKK3B1YmxpYzoKKyAgc2lnbmFsSW5mbyhvbW5p X3RyYWNlZGNvbmRpdGlvbiYgY3YsIGJvb2wgYnJvYWRjYXN0KSA6CisgICAgcGRfY3YoY3YpLCBw ZF9icm9hZGNhc3QoYnJvYWRjYXN0KSwgcGRfZWxtdChvbW5pSW50ZXJjZXB0b3JQOjpzaWduYWxN YWluVGhyZWFkKSB7fQorCisgIHZvaWQgcnVuKCk7CisgIAorcHJpdmF0ZToKKyAgb21uaV90cmFj ZWRjb25kaXRpb24mICAgcGRfY3Y7CisgIGJvb2wgICAgICAgICAgICAgICAgICAgIHBkX2Jyb2Fk Y2FzdDsKKyAgb21uaUludGVyY2VwdG9yUDo6ZWxtVCogcGRfZWxtdDsKK307CisKK3ZvaWQKK3Np Z25hbEluZm86OnJ1bigpCit7CisgIGlmIChwZF9lbG10KSB7CisgICAgb21uaUludGVyY2VwdG9y czo6c2lnbmFsTWFpblRocmVhZF9UOjppbnRlcmNlcHRGdW5jIGYgPQorICAgICAgKG9tbmlJbnRl cmNlcHRvcnM6OnNpZ25hbE1haW5UaHJlYWRfVDo6aW50ZXJjZXB0RnVuYylwZF9lbG10LT5mdW5j OworICAgIHBkX2VsbXQgPSBwZF9lbG10LT5uZXh0OworICAgIGYoKnRoaXMpOworICB9IGVsc2Ug eworICAgIGlmIChwZF9icm9hZGNhc3QpCisgICAgICBwZF9jdi5icm9hZGNhc3QoKTsKKyAgICBl bHNlCisgICAgICBwZF9jdi5zaWduYWwoKTsKKyAgfQorfQorCitPTU5JX05BTUVTUEFDRV9FTkQo b21uaSkKKworCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyBv bW5pT3JiT1JCIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAvLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCkBA IC0xMTIxLDcgKzExNTgsMTAgQEANCiAJaWYgKGludm9rZXJfc2lnbmFsLnRpbWVkd2FpdChzZWNz LCBuYW5vc2VjcykgPT0gMCkgewogCSAgLy8gdGltZW91dAogCSAgaW52b2tlcl90aHJlYWRzLS07 Ci0JICBpZiAoaW52b2tlcl9zaHV0dGluZ19kb3duKSBpbnZva2VyX3NpZ25hbC5zaWduYWwoKTsK KwkgIGlmIChpbnZva2VyX3NodXR0aW5nX2Rvd24pIHsKKwkgICAgc2lnbmFsSW5mbyBpbmZvKGlu dm9rZXJfc2lnbmFsLCBmYWxzZSk7CisJICAgIGluZm8ucnVuKCk7CisJICB9CiAJICBvcmJfbG9j ay51bmxvY2soKTsKIAkgIHJldHVybjsKIAl9CkBAIC0xMTQ4LDcgKzExODgsMTAgQEANCiAgIE9N TklPUkJfQVNTRVJUKG9tbmlUYXNrTGluazo6aXNfZW1wdHkoaW52b2tlcl9kZWRpY2F0ZWRfdHEp KTsKIAogICBpbnZva2VyX3RocmVhZHMtLTsKLSAgaWYgKGludm9rZXJfc2h1dHRpbmdfZG93bikg aW52b2tlcl9zaWduYWwuc2lnbmFsKCk7CisgIGlmIChpbnZva2VyX3NodXR0aW5nX2Rvd24pIHsK KyAgICBzaWduYWxJbmZvIGluZm8oaW52b2tlcl9zaWduYWwsIGZhbHNlKTsKKyAgICBpbmZvLnJ1 bigpOworICB9CiAgIG9yYl9sb2NrLnVubG9jaygpOwogfQogCkBAIC0xMTU5LDcgKzEyMDIsOCBA QA0KIAogICBvbW5pX3RyYWNlZG11dGV4X2xvY2sgc3luYyhvcmJfbG9jayk7CiAgIHQtPmVucShp bnZva2VyX2RlZGljYXRlZF90cSk7Ci0gIGludm9rZXJfc2lnbmFsLnNpZ25hbCgpOworICBzaWdu YWxJbmZvIGluZm8oaW52b2tlcl9zaWduYWwsIGZhbHNlKTsKKyAgaW5mby5ydW4oKTsKICAgcmV0 dXJuIDE7CiB9CiAKQEAgLTExOTAsNyArMTIzNCw4IEBADQogewogICBBU1NFUlRfT01OSV9UUkFD RURNVVRFWF9IRUxEKG9yYl9sb2NrLCAxKTsKICAgaW52b2tlcl9zaHV0dGluZ19kb3duID0gMTsK LSAgaW52b2tlcl9zaWduYWwuYnJvYWRjYXN0KCk7CisgIHNpZ25hbEluZm8gaW5mbyhpbnZva2Vy X3NpZ25hbCwgdHJ1ZSk7CisgIGluZm8ucnVuKCk7CiB9CiAKIApJbmRleDogc3JjL2xpYi9vbW5p T1JCL29yYmNvcmUvaW50ZXJjZXB0b3JzLmNjDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gc3JjL2xpYi9vbW5p T1JCL29yYmNvcmUvaW50ZXJjZXB0b3JzLmNjCShyZXZpc2lvbiA1OTE1KQ0KKysrIHNyYy9saWIv b21uaU9SQi9vcmJjb3JlL2ludGVyY2VwdG9ycy5jYwkod29ya2luZyBjb3B5KQ0KQEAgLTg2LDYg Kzg2LDcgQEANCiBvbW5pSW50ZXJjZXB0b3JQOjplbG1UKiBvbW5pSW50ZXJjZXB0b3JQOjpjcmVh dGVQb2xpY3kgICAgICAgICAgID0gMDsKIG9tbmlJbnRlcmNlcHRvclA6OmVsbVQqIG9tbmlJbnRl cmNlcHRvclA6OmNyZWF0ZVRocmVhZCAgICAgICAgICAgPSAwOwogb21uaUludGVyY2VwdG9yUDo6 ZWxtVCogb21uaUludGVyY2VwdG9yUDo6YXNzaWduVXBjYWxsVGhyZWFkICAgICA9IDA7CitvbW5p SW50ZXJjZXB0b3JQOjplbG1UKiBvbW5pSW50ZXJjZXB0b3JQOjpzaWduYWxNYWluVGhyZWFkICAg ICAgID0gMDsKIAogCiBzdGF0aWMgdm9pZCBsaXN0X2FkZChvbW5pSW50ZXJjZXB0b3JQOjplbG1U KiogZXAsIHZvaWQqIGZ1bmMpCkBAIC0xNDYsNiArMTQ3LDcgQEANCiBJTlRFUkNFUFRPUl9JTVBM RU1FTlRBVElPTihjcmVhdGVQb2xpY3kpCiBJTlRFUkNFUFRPUl9JTVBMRU1FTlRBVElPTihjcmVh dGVUaHJlYWQpCiBJTlRFUkNFUFRPUl9JTVBMRU1FTlRBVElPTihhc3NpZ25VcGNhbGxUaHJlYWQp CitJTlRFUkNFUFRPUl9JTVBMRU1FTlRBVElPTihzaWduYWxNYWluVGhyZWFkKQogCiAjdW5kZWYg SU5URVJDRVBUT1JfSU1QTEVNRU5UQVRJT04KIApAQCAtMTc4LDYgKzE4MCw3IEBADQogICAgICAg bGlzdF9kZWwoJm9tbmlJbnRlcmNlcHRvclA6OmNyZWF0ZVBvbGljeSk7CiAgICAgICBsaXN0X2Rl bCgmb21uaUludGVyY2VwdG9yUDo6Y3JlYXRlVGhyZWFkKTsKICAgICAgIGxpc3RfZGVsKCZvbW5p SW50ZXJjZXB0b3JQOjphc3NpZ25VcGNhbGxUaHJlYWQpOworICAgICAgbGlzdF9kZWwoJm9tbmlJ bnRlcmNlcHRvclA6OnNpZ25hbE1haW5UaHJlYWQpOwogICAgIH0KICAgfQogCg== ------=_20090906045516_12735 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ omniORB-dev mailing list [email protected] http://www.omniorb-support.com/mailman/listinfo/omniorb-dev ------=_20090906045516_12735--