bug661952.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. var __counter = 0;
  6. function test0() {
  7. __counter++;
  8. function leaf() {
  9. }
  10. var obj0 = {};
  11. var obj1 = {};
  12. var arrObj0 = {};
  13. var func0 = function () {
  14. for (var _strvar0 in obj0) {
  15. if (_strvar0.indexOf('method') != -1) {
  16. continue;
  17. }
  18. return leaf();
  19. }
  20. return leaf();
  21. do {
  22. } while (arrObj0);
  23. };
  24. var func2 = function () {
  25. };
  26. obj0.method0 = func2;
  27. obj0.method1 = func0;
  28. arrObj0.method1 = func2;
  29. Object.prototype.prop0 = -21449704;
  30. var uniqobj27 = [
  31. obj1,
  32. obj0,
  33. arrObj0
  34. ];
  35. var uniqobj28 = uniqobj27[__counter];
  36. uniqobj28.method1();
  37. }
  38. try
  39. {
  40. test0();
  41. test0();
  42. test0();
  43. }
  44. catch(e)
  45. {
  46. WScript.Echo("PASS");
  47. }