parentDomain родственного приложения. Не совпадают домены ... как и почему - PullRequest
0 голосов
/ 18 декабря 2010

Как же может быть ложным в следующем фрагменте?

var child1:ApplicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
var child2:ApplicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);

var same:Boolean = (child1.parentDomain === child2.parentDomain);
trace(same);

1 Ответ

2 голосов
/ 18 декабря 2010

Вы используете оператор строгого равенства и создаете два новых объекта, несмотря на то, что они имеют некоторое свойство, то есть currentDomain, который передается в качестве аргумента конструктору, это не тот же объект, если бы высначала создайте

var temp:ApplicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);

, затем назначьте его как child1 и child2, затем сравните их родительские домены друг с другом. Держу пари, вы получите другой результат.Я бы добавил точку останова и посмотрел на адреса памяти как child1 / child2, так и child1.parentDomain и child2.parentDomain (на панели отладки), чтобы определить, что на самом деле здесь происходит, к сожалению, объект ApplicationDomain является частьюзакрытой исходной части Flash.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...