По-моему причину уже миллион раз объясняли: Opera работает под кучей различных платформ (в том числе всякие телевизоры, приставки и т.п.), а движок везде один и тот же. Так вот это типа ограничение, накладываемое некоторыми платформами.
Я далёк от веб-разработки, но… неужели 216 — это так мало? o_O Зачем вообще можно использовать такие размеры?
На моем телефоне ОупенОфис не запуститься. Так что, по Вашем, под платформу моего телефона платформу урезать ОупенОфис?
Или может стоит таки сделать мобильную (как пример)?
Одно из важнейших правил — не ограничивать то, что можно не ограничивать. Оно здесь применимо вполне и без особых проблем, на мой взгляд. Если проблемы имеют место быть — это «затык» архитектурного, либо организационного (билд-ферма) решения.
Ничего идеального не бывает. Когда создавался движок, посчитали, что нет смысла выделять на длину/ширину больше, а теперь, по-видимому, затраты на исправление данной ситуации превосходят выгоду.
Да и опять же, Вы б показали мне для начала стандарт, где прямо сказано, что это баг.
Кстати, мне не совсем ясно, если в Opera длина и ширина объявлены как uint16, то с какой радости оно вдруг должно стать отрицательным?
Речь идет о небольшом промахе, на мой взгляд. Это далеко не критично, более того эта «проблема» имеет наименьший приоритет. Я лишь хочу сказать, что не должно быть особых проблем в исправлении этой мелочи.
Если же вы имеете в виду, что затраты на приведение ситуации в порядок не оправданы по сравнению с эффективностью решения и его актуальностью, то, практически полностью уверен в том, что решение ситуации практически беззатратно (либо решается очень просто и быстро, либо помогает решать «затык», который еще не раз может всплыть в диких проявлениях).
Согласен с вами, но я сталкивался с очень крупными проектами и отдаю себе отчет о чем идет речь. Если же данный момент завязан действительно глубоко (глубже глубокого), то все-таки, имхо, это есть ничто иное как ошибка в архитектуре.
А вам хватит 32766 в Opera?