From 67da94d22e7366ac3c830b1397b489e86056086b Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Mon, 16 Jul 2012 10:47:37 +0000 Subject: [PATCH] e: avoid buffer overrun. SVN revision: 73922 --- src/bin/e_config.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 9303db94f..22854839a 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -572,7 +572,11 @@ e_config_init(void) E_CONFIG_VAL(D, T, vTotal, INT); E_CONFIG_VAL(D, T, name, STR); E_CONFIG_VAL(D, T, nameLength, INT); - E_CONFIG_VAL(D, T, modeFlags, LL); + /* Work around a possible ABI break due to poor type choice. */ + if (sizeof (int) == sizeof (unsigned long)) + E_CONFIG_VAL(D, T, modeFlags, INT); + else if (sizeof (unsigned long long) == sizeof (unsigned long)) + E_CONFIG_VAL(D, T, modeFlags, LL); _e_config_randr_serialized_crtc_edd = E_CONFIG_DD_NEW("E_Randr_Serialized_Crtc", E_Randr_Serialized_Crtc); #undef T