Copy link to clipboard
Copied
Hey everyone.
Since a few days we are encountering problems when packaging an AIR app for iOS in Ad-Hoc mode. Surprisingly it only happens on OSX systems, on Windows machines the packaging works fine.
The problem seems to be related to bit code optimisation. The error message we get is:
/var/folders/xb/rnv7n04504z1nl2fctzrhh6w0000gn/T/cmd9115877983785729048.tmp: line 1: 17432 Illegal instruction: 4 "java" "-Djava.util.Arrays.useLegacyMergeSort=true" "-Xms32m" "-Xmx32m" "-cp" "/some/path/air3-8_sdk_mac/lib/adt.jar" "com.adobe.air.ipa.BitcodeOptimizer" "/some/path/client/dist/ios/AOTBuildOutput9062268743264798939.tmp/BitcodeOptimizer_opts.ser"
Our research so far shows, that the message "Illegal instruction: 4" may be related to gcc/llvm.
The OSX systems we tested on run on OSX 10.8 and it fails with the AIR SDK 3.8 beta as well as with the current final release. We could track down the issue to one single commit, which introduced asynchronus texture upload via uploadCompressedTextureFromByteArray().
Any help?
Copy link to clipboard
Copied
Hi Erik,
I'm Alisa, from the Adobe Flash team
I used a simple swf to package a .ipa fie with target ad-hoc. It worked well without error threw. (Mac 10.8.5 + AIR 3.8.0.1470)
If possilbe ,could you please share me a sample file to quick our investigation? alisaw@adobe.com
thank you.
Alisa
Copy link to clipboard
Copied
Thanks for your help Alisa. I have sent you the files via email.
Copy link to clipboard
Copied
An internal bug has already been filed. And it is under the tofix quene.
thanks for your patience.
Copy link to clipboard
Copied
Old thread but... I'm seeing this error while trying to package an iOS application for AIR 20.
I'm packaging on Mac OS X 10.11.1 with XCode 7, IOS SDK 9.1 and AIR 20.
It works fine with AIR 17, XCode 6 and IOS SDK 8.4.
I was able to reproduce this on another machine as well.
Also... usually I see Illegal Instruction: 4 but sometimes I see Bus Error 10 instead.
Copy link to clipboard
Copied
I narrowed this down to a function that was 700+ lines long. I split the function into 2 separate functions and both the errors went away.
And by narrowed down I mean I just kept ripping out/replacing code until I found the offending function. It took 12 hours to track down.
Here is the function in case someone from Adobe wants to test it:
static public function createDeskingSalesEventObject( id:int, eventId:String, addressId:String ):Object {
var result:Object = new Object();
result.SiteState = AddressState.CALIFORNIA;
result.Deal = new Object();
result.Deal.id = "1";
result.Deal.Rebate = (id * 10);
result.Deal.mAmtFin = (id * 10000);
result.Deal.dealEvent = new Object();
result.Deal.dealEvent.eventId = 1;
result.Deal.valuations = new Array([new Object()]);
result.Deal.valuations[0].valuationKey = "";
result.Deal.dealFee = new Array();
result.Deal.dealAfterMarkets = new Array();
result.Deal.dealTrades = new Array();
result.Deal.zipData = new Array();
result.Deal.loanDetails = new Object();
result.Deal.leaseDetails = new Object();
result.Deal.loanDetails.mAmtFin = (id * 10000);
result.Deal.leaseDetails.mAmtFin = (id * 10000);
result.Deal.loanDetails.mCommGross = (id * 1000);
result.Deal.leaseDetails.mCommGross = (id * 1000);
result.Deal.eventQuote = new Object();
result.Deal.eventQuote.buyRateLoan = (id * .1);
result.Deal.eventQuote.buyRateLease = (id * .1);
result.Deal.eventQuote.onePayMarkdown = 0;
result.Deal.eventQuote.mDocFeeLease = 0;
result.Deal.eventQuote.mRebate = (id * 10);
result.Deal.quote = new Object();
result.Deal.quote.mBaseMsrp = 21000;
result.Deal.quote.mAmtFin = (id * 10000);
result.Deal.quote.dFinanceRate = 2.9;
result.Deal.quote.mBalApr = 2.9;
result.Deal.quote.dLeaseFactor = .5;
result.Deal.quote.tiFinanceTerm = 24;
result.Deal.quote.mBalTerm = 24;
result.Deal.quote.tiLeaseTerm = 24;
result.Deal.quote.mSecDep = (id * 500);
result.Deal.quote.iDtfp = 45;
result.Deal.quote.mPrice = (id * 10000);
result.Deal.quote.mRebate = (id * 10);
result.Deal.quote.mBalRebate = (id * 10);
result.Deal.quote.mLseRebate = (id * 10);
result.Deal.quote.mDownPay = (id * 500);
result.Deal.quote.mBalDown = (id * 500);
result.Deal.quote.mDocFee = 0;
result.Deal.quote.dtDealDate = new Date(2000, 12, 1);
result.Deal.quote.dtSoldDate = new Date(2000, 12, 2);
result.Deal.quote.iSecDepInDo = true;
result.Deal.quote.iStateFeesInDo = true;
result.Deal.quote.iLicenceFeesInDo = true;
result.Deal.quote.mVsc = 0;
result.Deal.quote.mAqcFee = 0;
result.Deal.quote.mMaint = 0;
result.Deal.totalAftermarketAmount = 0;
result.Deal.quote.mGap = 0;
result.Deal.quote.mDealerPrep = 0;
result.Deal.quote.mCapReduction = 0;
result.Deal.quote.mCapCost = (id * 10000);
result.Deal.quote.mCustCash = 0;
result.Deal.quote.mNetCap = (id * 10000);
result.Deal.quote.vchVIN = "9D8S99G09B0S99S55";
result.Deal.quote.vchYear = "2001";
result.Deal.quote.vchMake = "Honda";
result.Deal.quote.vchModel = "Civic";
result.Deal.quote.vchTrim = "LX SPECIAL EDITION";
result.Deal.quote.iCurrentMiles = 75000;
result.Deal.quote.vchInterior = "Sand";
result.Deal.quote.vchExterior = "White";
result.Deal.quote.deliveredDateISO = "2001-05-28";
result.Deal.quote.chromeStyleId = "123456";
result.Deal.quote.vchStockNo = "8762A";
result.Deal.quote.mGap = 0;
result.Deal.quote.mMaint = 0;
result.Deal.quote.mVsc = 0;
result.Deal.quote.mFinalPay = 0;
result.Deal.inv = new Object();
result.Deal.inv.Inventory = 1;
result.Deal.inv.vchVIN = "9D8S99G09B0S99S55";
result.Deal.inv.vchYear = "2001";
result.Deal.inv.vchMake = "Honda";
result.Deal.inv.vchModel = "Civic";
result.Deal.inv.vchTrim = "LX SPECIAL EDITION";
result.Deal.inv.iCurrentMiles = 75000;
result.Deal.inv.vchInterior = "Sand";
result.Deal.inv.vchExterior = "White";
result.Deal.inv.ChromeStyleId = "123456";
result.Deal.inv.vchStockNo = "8762A";
result.Deal.inv.mMSRP = (id * 10000);
result.Deal.trades = new Array(result.Deal.quote.vehicle);
result.LeaseCompany = new Object();
result.LeaseCompany.vchType = "Lease";
result.LeaseCompany.iDefault = true;
result.LeaseCompany.waiveFirstPayment = true;
result.OnePayLeaseCompany = new Object();
result.OnePayLeaseCompany.vchType = "Lease";
result.OnePayLeaseCompany.onePayMinimumMoneyFactor = (id * .1);
result.Deal.entity = new Object();
result.Deal.entity.chState = "CA";
result.Deal.entity.iEntityId = 1;
result.Deal.entity.iSiteId = 1;
result.Deal.entity.tiEntityType = null;
result.Deal.entity.vchCompanyName = "Acme";
result.Deal.entity.vchSalutation = "Mr.";
result.Deal.entity.chGender = "";
result.Deal.entity.vchFirstName = "John";
result.Deal.entity.vchMiddleName = "";
result.Deal.entity.vchLastName = "Smith";
result.Deal.entity.vchAddress1 = "100 Avenida La Pata";
result.Deal.entity.vchAddress2 = "";
result.Deal.entity.vchAddress3 = "";
result.Deal.entity.vchPostCode = "92673";
result.Deal.entity.vchCounty = "";
result.Deal.entity.chCountryCode = "";
result.Deal.entity.vchWorkNumber = "1232222222";
result.Deal.entity.vchMobileNumber = "1231111111";
result.Deal.entity.vchFaxNumber = "";
result.Deal.entity.vchOtherNumber = "1233333333";
result.Deal.entity.vchEmailAddress = "jsmith@demo.com";
result.Deal.entity.vchURL = "";
result.Deal.entity.iTypeCode = 0;
result.Deal.entity.iSubTypeCode = 0;
result.Deal.entity.iPrimaryRelationshipId = 0;
result.Deal.entity.iSourceId = 0;
result.Deal.entity.iStatusId = 0;
result.Deal.entity.iOptInMarketing = 0;
result.Deal.entity.iPreferredContactType = 0;
result.Deal.entity.iNeverContactType = 0;
result.Deal.entity.vchExternalReference = "";
result.Deal.entity.vchExternalReference2 = "";
result.Deal.entity.vchUserDefined1 = "";
result.Deal.entity.vchUserDefined2 = "";
result.Deal.entity.bValidAddress = 0;
result.Deal.entity.vchSpecialNote1 = "";
result.Deal.entity.vchDriversLicenseNo = "";
result.Deal.entity.vchDPID = "";
result.Deal.entity.vchJoint = "";
result.Deal.entity.tiRecordStatus = new Object();
result.Deal.entity.tsFireSocket = new Object();
result.Deal.coBuyer = new Object();
result.Deal.coBuyer.iEntityId = 1;
result.Deal.coBuyer.iSiteId = 1;
result.Deal.coBuyer.tiEntityType = null;
result.Deal.coBuyer.vchCompanyName = "";
result.Deal.coBuyer.vchSalutation = "";
result.Deal.coBuyer.chGender = "";
result.Deal.coBuyer.vchFirstName = "";
result.Deal.coBuyer.vchMiddleName = "";
result.Deal.coBuyer.vchLastName = "";
result.Deal.coBuyer.vchAddress1 = "";
result.Deal.coBuyer.vchAddress2 = "";
result.Deal.coBuyer.vchAddress3 = "";
result.Deal.coBuyer.vchPostCode = "";
result.Deal.coBuyer.vchCounty = "";
result.Deal.coBuyer.chCountryCode = "";
result.Deal.coBuyer.vchWorkNumber = "";
result.Deal.coBuyer.vchMobileNumber = "";
result.Deal.coBuyer.vchFaxNumber = "";
result.Deal.coBuyer.vchOtherNumber = "";
result.Deal.coBuyer.vchEmailAddress = "";
result.Deal.coBuyer.vchURL = "";
result.Deal.coBuyer.iTypeCode = 0;
result.Deal.coBuyer.iSubTypeCode = 0;
result.Deal.coBuyer.iPrimaryRelationshipId = 0;
result.Deal.coBuyer.iSourceId = 0;
result.Deal.coBuyer.iStatusId = 0;
result.Deal.coBuyer.iOptInMarketing = 0;
result.Deal.coBuyer.iPreferredContactType = 0;
result.Deal.coBuyer.iNeverContactType = 0;
result.Deal.coBuyer.vchExternalReference = "";
result.Deal.coBuyer.vchExternalReference2 = "";
result.Deal.coBuyer.vchUserDefined1 = "";
result.Deal.coBuyer.vchUserDefined2 = "";
result.Deal.coBuyer.bValidAddress = 0;
result.Deal.coBuyer.vchSpecialNote1 = "";
result.Deal.coBuyer.vchDriversLicenseNo = "";
result.Deal.coBuyer.vchDPID = "";
result.Deal.coBuyer.vchJoint = "";
result.Deal.coBuyer.tiRecordStatus = new Object();
result.Deal.coBuyer.tsFireSocket = new Object();
result.Deal.compare = new Object();
result.Deal.compare.iDealCompareId = 0;
result.Deal.compare.iQuoteId = 0;
result.Deal.compare.vchLoanType = new DealType();
result.Deal.compare.vchCalcType = new LeaseCalculationType();
result.Deal.compare.vchStockNo = 0;
result.Deal.compare.iRiskScore = 0;
result.Deal.compare.mInitialDown = 0;
result.Deal.compare.mDownIncrement = 0;
result.Deal.compare.chInsertBy = "";
result.Deal.compare.chUpdateBy = "";
result.Deal.compare.dtUpdateDate = new Date();
result.Deal.compare.tRecordStatus = "";
result.Deal.compare.dtInsertDate = new Date();
result.Deal.compare.vchYear = "";
result.Deal.compare.vchCondition = "";
result.Deal.compare.vchMake = "";
result.Deal.compare.vchModel = "";
result.Deal.compare.vchTrim = "";
result.Deal.compare.vchTransmission = "";
result.Deal.compare.vchAirConditioning = "";
result.Deal.compare.iCurrentMiles = "";
result.Deal.compare.vchVIN = "";
result.Deal.compare.vchChromeStyleId = "";
result.Deal.loanCompare = new Object();
result.Deal.loanCompare.iDealCompareId = 1;
result.Deal.loanCompare.iQuoteId = 1;
result.Deal.loanCompare.vchLoanType = "loan";
result.Deal.loanCompare.vchCalcType = "GMAC";
result.Deal.loanCompare.vchStockNo = "";
result.Deal.loanCompare.iRiskScore = 1;
result.Deal.loanCompare.mInitialDown = 0;
result.Deal.loanCompare.mDownIncrement = 1000;
result.Deal.loanCompare.chInsertBy = "";
result.Deal.loanCompare.chUpdateBy = "";
result.Deal.loanCompare.dtUpdateDate = new Date();
result.Deal.loanCompare.tRecordStatus = "";
result.Deal.loanCompare.dtInsertDate = new Date();
result.Deal.loanCompare.vchYear = "";
result.Deal.loanCompare.vchCondition = "";
result.Deal.loanCompare.vchMake = "";
result.Deal.loanCompare.vchModel = "";
result.Deal.loanCompare.vchTrim = "";
result.Deal.loanCompare.vchTransmission = "";
result.Deal.loanCompare.vchAirConditioning = "";
result.Deal.loanCompare.iCurrentMiles = "";
result.Deal.loanCompare.vchVIN = "";
result.Deal.loanCompare.vchChromeStyleId = "";
result.Deal.loanCompare.Terms = new Array(new Object(), new Object(), new Object(), new Object());
result.Deal.loanCompare.Terms[0].iTerm = 24;
result.Deal.loanCompare.Terms[0].dRate = .5;
result.Deal.loanCompare.Terms[0].Rebate = (id * 10);
result.Deal.loanCompare.Terms[1].iTerm = 48;
result.Deal.loanCompare.Terms[1].dRate = 5;
result.Deal.loanCompare.Terms[1].Rebate = (id * 10);
result.Deal.loanCompare.Terms[2].iTerm = 56;
result.Deal.loanCompare.Terms[2].dRate = 10;
result.Deal.loanCompare.Terms[2].Rebate = (id * 10);
result.Deal.loanCompare.Terms[3].iTerm = 72;
result.Deal.loanCompare.Terms[3].dRate = 15;
result.Deal.loanCompare.Terms[3].Rebate = (id * 10);
result.Deal.leaseCompare = new Object();
result.Deal.leaseCompare.iDealCompareId = 2;
result.Deal.leaseCompare.iQuoteId = 1;
result.Deal.leaseCompare.vchLoanType = "lease";
result.Deal.leaseCompare.vchCalcType = "GMAC";
result.Deal.leaseCompare.vchStockNo = "";
result.Deal.leaseCompare.iRiskScore = 1;
result.Deal.leaseCompare.mInitialDown = 0;
result.Deal.leaseCompare.mDownIncrement = 1000;
result.Deal.leaseCompare.chInsertBy = "";
result.Deal.leaseCompare.chUpdateBy = "";
result.Deal.leaseCompare.dtUpdateDate = new Date();
result.Deal.leaseCompare.tRecordStatus = "";
result.Deal.leaseCompare.dtInsertDate = new Date();
result.Deal.leaseCompare.vchYear = "";
result.Deal.leaseCompare.vchCondition = "";
result.Deal.leaseCompare.vchMake = "";
result.Deal.leaseCompare.vchModel = "";
result.Deal.leaseCompare.vchTrim = "";
result.Deal.leaseCompare.vchTransmission = "";
result.Deal.leaseCompare.vchAirConditioning = "";
result.Deal.leaseCompare.iCurrentMiles = "";
result.Deal.leaseCompare.vchVIN = "";
result.Deal.leaseCompare.vchChromeStyleId = "";
result.Deal.leaseCompare.Terms = new Array(new Object(), new Object(), new Object(), new Object());
result.Deal.leaseCompare.Terms[0].iTerm = 24;
result.Deal.leaseCompare.Terms[0].dRate = .5;
result.Deal.leaseCompare.Terms[0].dRes = .5;
result.Deal.leaseCompare.Terms[0].Rebate = (id * 10);
result.Deal.leaseCompare.Terms[1].iTerm = 48;
result.Deal.leaseCompare.Terms[1].dRate = 5;
result.Deal.leaseCompare.Terms[1].dRes = 5;
result.Deal.leaseCompare.Terms[1].Rebate = (id * 10);
result.Deal.leaseCompare.Terms[2].iTerm = 56;
result.Deal.leaseCompare.Terms[2].dRate = 10;
result.Deal.leaseCompare.Terms[2].dRes = 10;
result.Deal.leaseCompare.Terms[2].Rebate = (id * 10);
result.Deal.leaseCompare.Terms[3].iTerm = 72;
result.Deal.leaseCompare.Terms[3].dRate = 15;
result.Deal.leaseCompare.Terms[3].dRes = 20;
result.Deal.leaseCompare.Terms[3].Rebate = (id * 10);
result.Deal.leaseCompare.OnePayTerm = 1;
result.Deal.leaseCompare.OnePayRate = 6;
result.Deal.leaseCompare.OnePayResidual = .6;
result.Deal.balloonCompare = new Object();
result.Deal.balloonCompare.iDealCompareId = 3;
result.Deal.balloonCompare.iQuoteId = 1;
result.Deal.balloonCompare.vchLoanType = "balloon";
result.Deal.balloonCompare.vchCalcType = "GMAC";
result.Deal.balloonCompare.vchStockNo = "";
result.Deal.balloonCompare.iRiskScore = 1;
result.Deal.balloonCompare.mInitialDown = 0;
result.Deal.balloonCompare.mDownIncrement = 1000;
result.Deal.balloonCompare.chInsertBy = "";
result.Deal.balloonCompare.chUpdateBy = "";
result.Deal.balloonCompare.dtUpdateDate = new Date();
result.Deal.balloonCompare.tRecordStatus = "";
result.Deal.balloonCompare.dtInsertDate = new Date();
result.Deal.balloonCompare.vchYear = "";
result.Deal.balloonCompare.vchCondition = "";
result.Deal.balloonCompare.vchMake = "";
result.Deal.balloonCompare.vchModel = "";
result.Deal.balloonCompare.vchTrim = "";
result.Deal.balloonCompare.vchTransmission = "";
result.Deal.balloonCompare.vchAirConditioning = "";
result.Deal.balloonCompare.iCurrentMiles = "";
result.Deal.balloonCompare.vchVIN = "";
result.Deal.balloonCompare.vchChromeStyleId = "";
result.Deal.balloonCompare.Terms = new Array(new Object(), new Object(), new Object(), new Object());
result.Deal.balloonCompare.Terms[0].iTerm = 24;
result.Deal.balloonCompare.Terms[0].dRate = .5;
result.Deal.balloonCompare.Terms[0].dRes = .5;
result.Deal.balloonCompare.Terms[0].Rebate = (id * 10);
result.Deal.balloonCompare.Terms[1].iTerm = 48;
result.Deal.balloonCompare.Terms[1].dRate = 5;
result.Deal.balloonCompare.Terms[1].dRes = 5;
result.Deal.balloonCompare.Terms[1].Rebate = (id * 10);
result.Deal.balloonCompare.Terms[2].iTerm = 56;
result.Deal.balloonCompare.Terms[2].dRate = 10;
result.Deal.balloonCompare.Terms[2].dRes = 15;
result.Deal.balloonCompare.Terms[2].Rebate = (id * 10);
result.Deal.balloonCompare.Terms[3].iTerm = 72;
result.Deal.balloonCompare.Terms[3].dRate = 15;
result.Deal.balloonCompare.Terms[3].dRes = 20;
result.Deal.balloonCompare.Terms[3].Rebate = (id * 10);
result.Deal.deskingIncentives = new Object();
result.Deal.workNotes = new Array();
result.DealerDocLabel = "Dealer Doc Label";
result.DealerPrepLabel = "Dealer Prep Label";
result.Deal.entity.chState = "CA";
result.Deal.isMobile = true;
result.DeskingForm = new Object();
result.DeskingForm.formId = 1;
result.DeskingForm.siteId = 1;
result.DeskingForm.title = "Compare Demo";
result.DeskingForm.disclaimer = "This is only a Test!";
result.DeskingForm.baseElements = new Array(new Object(), new Object(), new Object(), new Object(), new Object());
result.DeskingForm.baseElements[0].isDisplayed = true;
result.DeskingForm.baseElements[0].elementType = new Object();
result.DeskingForm.baseElements[0].dealType = new Object();
result.DeskingForm.baseElements[0].dealType.dealTypeId = 1;
result.DeskingForm.baseElements[0].dealType.name = "loan";
result.DeskingForm.baseElements[0].elementType.elementTypeId = 1;
result.DeskingForm.baseElements[0].elementType.name = "base";
result.DeskingForm.baseElements[0].name = "compare_loan_matrix";
result.DeskingForm.baseElements[0].seqNumber = 1;
result.DeskingForm.baseElements[0].alignment = "left";
result.DeskingForm.baseElements[1].isDisplayed = true;
result.DeskingForm.baseElements[1].elementType = new Object();
result.DeskingForm.baseElements[1].dealType = new Object();
result.DeskingForm.baseElements[1].dealType.dealTypeId = 2;
result.DeskingForm.baseElements[1].dealType.name = "lease";
result.DeskingForm.baseElements[1].elementType.elementTypeId = 1;
result.DeskingForm.baseElements[1].elementType.name = "base";
result.DeskingForm.baseElements[1].name = "compare_lease_matrix";
result.DeskingForm.baseElements[1].seqNumber = 2;
result.DeskingForm.baseElements[1].alignment = "left";
result.DeskingForm.baseElements[2].isDisplayed = true;
result.DeskingForm.baseElements[2].elementType = new Object();
result.DeskingForm.baseElements[2].dealType = new Object();
result.DeskingForm.baseElements[2].dealType.dealTypeId = 3;
result.DeskingForm.baseElements[2].dealType.name = "balloon";
result.DeskingForm.baseElements[2].elementType.elementTypeId = 1;
result.DeskingForm.baseElements[2].elementType.name = "base";
result.DeskingForm.baseElements[2].name = "compare_balloon_matrix";
result.DeskingForm.baseElements[2].seqNumber = 3;
result.DeskingForm.baseElements[2].alignment = "left";
result.DeskingForm.baseElements[3].isDisplayed = true;
result.DeskingForm.baseElements[3].elementType = new Object();
result.DeskingForm.baseElements[3].dealType = new Object();
result.DeskingForm.baseElements[3].dealType.dealTypeId = 4;
result.DeskingForm.baseElements[3].dealType.name = "cash";
result.DeskingForm.baseElements[3].elementType.elementTypeId = 1;
result.DeskingForm.baseElements[3].elementType.name = "base";
result.DeskingForm.baseElements[3].name = "compare_loan_cashDeal";
result.DeskingForm.baseElements[3].seqNumber = 3;
result.DeskingForm.baseElements[3].alignment = "left";
result.DeskingForm.baseElements[4].isDisplayed = true;
result.DeskingForm.baseElements[4].elementType = new Object();
result.DeskingForm.baseElements[4].dealType = new Object();
result.DeskingForm.baseElements[4].dealType.dealTypeId = 6;
result.DeskingForm.baseElements[4].dealType.name = "onepay";
result.DeskingForm.baseElements[4].elementType.elementTypeId = 1;
result.DeskingForm.baseElements[4].elementType.name = "base";
result.DeskingForm.baseElements[4].name = "compare_lease_onePay";
result.DeskingForm.baseElements[4].seqNumber = 3;
result.DeskingForm.baseElements[4].alignment = "left";
result.DeskingForm.groupElements = new Array(new Object(), new Object(), new Object(), new Object(), new Object(), new Object());
result.DeskingForm.groupElements[0].groupElementId = 1;
result.DeskingForm.groupElements[0].elementType = new Object();
result.DeskingForm.groupElements[0].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[0].elementType.name = "group";
result.DeskingForm.groupElements[0].name = "compare_loan_matrix";
result.DeskingForm.groupElements[0].dealType = new Object();
result.DeskingForm.groupElements[0].dealType.dealTypeId = 1;
result.DeskingForm.groupElements[0].dealType.name = "loan";
result.DeskingForm.groupElements[1].groupElementId = 2;
result.DeskingForm.groupElements[1].elementType = new Object();
result.DeskingForm.groupElements[1].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[1].elementType.name = "group";
result.DeskingForm.groupElements[1].name = "compare_lease_matrix";
result.DeskingForm.groupElements[1].dealType = new Object();
result.DeskingForm.groupElements[1].dealType.dealTypeId = 2;
result.DeskingForm.groupElements[1].dealType.name = "lease";
result.DeskingForm.groupElements[2].groupElementId = 3;
result.DeskingForm.groupElements[2].elementType = new Object();
result.DeskingForm.groupElements[2].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[2].elementType.name = "group";
result.DeskingForm.groupElements[2].name = "compare_balloon_matrix";
result.DeskingForm.groupElements[2].dealType = new Object();
result.DeskingForm.groupElements[2].dealType.dealTypeId = 3;
result.DeskingForm.groupElements[2].dealType.name = "balloon";
result.DeskingForm.groupElements[3].groupElementId = 4;
result.DeskingForm.groupElements[3].elementType = new Object();
result.DeskingForm.groupElements[3].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[3].elementType.name = "group";
result.DeskingForm.groupElements[3].name = "compare_loan_cashDeal";
result.DeskingForm.groupElements[3].dealType = new Object();
result.DeskingForm.groupElements[3].dealType.dealTypeId = 4;
result.DeskingForm.groupElements[3].dealType.name = "cash";
result.DeskingForm.groupElements[4].groupElementId = 5;
result.DeskingForm.groupElements[4].elementType = new Object();
result.DeskingForm.groupElements[4].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[4].elementType.name = "group";
result.DeskingForm.groupElements[4].name = "compare_lease_onePay";
result.DeskingForm.groupElements[4].dealType = new Object();
result.DeskingForm.groupElements[4].dealType.dealTypeId = 6;
result.DeskingForm.groupElements[4].dealType.name = "onepay";
result.DeskingForm.groupElements[5].groupElementId = 6;
result.DeskingForm.groupElements[5].elementType = new Object();
result.DeskingForm.groupElements[5].elementType.elementTypeId = 3;
result.DeskingForm.groupElements[5].elementType.name = "group";
result.DeskingForm.groupElements[5].name = "compare_valueadds";
result.DeskingForm.groupElements[5].dealType = new Object();
result.DeskingForm.groupElements[5].dealType.dealTypeId = 3;
result.DeskingForm.groupElements[5].dealType.name = "valueadds";
result.DeskingForm.groupElements[5].isDisplayed = false;
result.DeskingForm.formElements = new Array(new Object(), new Object(), new Object(), new Object(), new Object());
result.DeskingForm.formElements[0].formElementId = 1;
result.DeskingForm.formElements[0].elementType = new Object();
result.DeskingForm.formElements[0].elementType.elementTypeId = 2;
result.DeskingForm.formElements[0].elementType.name = "form";
result.DeskingForm.formElements[0].dealType = new Object();
result.DeskingForm.formElements[0].dealType.dealTypeId = 1;
result.DeskingForm.formElements[0].dealType.name = "loan";
result.DeskingForm.formElements[0].name = "loan";
result.DeskingForm.formElements[0].formType = new Object();
result.DeskingForm.formElements[0].formType.formTypeId = 1;
result.DeskingForm.formElements[0].formType.name = "compare";
result.DeskingForm.formElements[1].formElementId = 2;
result.DeskingForm.formElements[1].elementType = new Object();
result.DeskingForm.formElements[1].elementType.elementTypeId = 2;
result.DeskingForm.formElements[1].elementType.name = "form";
result.DeskingForm.formElements[1].dealType = new Object();
result.DeskingForm.formElements[1].dealType.dealTypeId = 2;
result.DeskingForm.formElements[1].dealType.name = "lease";
result.DeskingForm.formElements[1].name = "lease";
result.DeskingForm.formElements[1].formType = new Object();
result.DeskingForm.formElements[1].formType.formTypeId = 1;
result.DeskingForm.formElements[1].formType.name = "compare";
result.DeskingForm.formElements[2].formElementId = 3;
result.DeskingForm.formElements[2].elementType = new Object();
result.DeskingForm.formElements[2].elementType.elementTypeId = 2;
result.DeskingForm.formElements[2].elementType.name = "form";
result.DeskingForm.formElements[2].dealType = new Object();
result.DeskingForm.formElements[2].dealType.dealTypeId = 3;
result.DeskingForm.formElements[2].dealType.name = "balloon";
result.DeskingForm.formElements[2].name = "balloon";
result.DeskingForm.formElements[2].formType = new Object();
result.DeskingForm.formElements[2].formType.formTypeId = 1;
result.DeskingForm.formElements[2].formType.name = "compare";
result.DeskingForm.formElements[3].formElementId = 4;
result.DeskingForm.formElements[3].elementType = new Object();
result.DeskingForm.formElements[3].elementType.elementTypeId = 2;
result.DeskingForm.formElements[3].elementType.name = "form";
result.DeskingForm.formElements[3].dealType = new Object();
result.DeskingForm.formElements[3].dealType.dealTypeId = 4;
result.DeskingForm.formElements[3].dealType.name = "cash";
result.DeskingForm.formElements[3].name = "cash";
result.DeskingForm.formElements[3].formType = new Object();
result.DeskingForm.formElements[3].formType.formTypeId = 1;
result.DeskingForm.formElements[3].formType.name = "compare";
result.DeskingForm.formElements[4].formElementId = 5;
result.DeskingForm.formElements[4].elementType = new Object();
result.DeskingForm.formElements[4].elementType.elementTypeId = 2;
result.DeskingForm.formElements[4].elementType.name = "form";
result.DeskingForm.formElements[4].dealType = new Object();
result.DeskingForm.formElements[4].dealType.dealTypeId = 2;
result.DeskingForm.formElements[4].dealType.name = "onepay";
result.DeskingForm.formElements[4].name = "onepay";
result.DeskingForm.formElements[4].formType = new Object();
result.DeskingForm.formElements[4].formType.formTypeId = 1;
result.DeskingForm.formElements[4].formType.name = "compare";
result.DeskingForm.valueElements = new Array(new Object(), new Object(), new Object(), new Object(), new Object(), new Object(), new Object(), new Object(), new Object());
result.DeskingForm.valueElements[0].baseElementId = 6;
result.DeskingForm.valueElements[0].name = "Term1Option1";
result.DeskingForm.valueElements[0].seqNumber = 1;
result.DeskingForm.valueElements[0].isDisplayed = 1;
result.DeskingForm.valueElements[0].alignment = "right";
result.DeskingForm.valueElements[0].elementType = new Object();
result.DeskingForm.valueElements[0].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[0].elementType.name = "value";
result.DeskingForm.valueElements[0].dealType = new Object();
result.DeskingForm.valueElements[0].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[0].dealType.name = "loan";
result.DeskingForm.valueElements[0].elementGroupName = "used";
result.DeskingForm.valueElements[1].baseElementId = 6;
result.DeskingForm.valueElements[1].name = "Term";
result.DeskingForm.valueElements[1].seqNumber = 1;
result.DeskingForm.valueElements[1].isDisplayed = 1;
result.DeskingForm.valueElements[1].alignment = "right";
result.DeskingForm.valueElements[1].elementType = new Object();
result.DeskingForm.valueElements[1].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[1].elementType.name = "value";
result.DeskingForm.valueElements[1].dealType = new Object();
result.DeskingForm.valueElements[1].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[1].dealType.name = "loan";
result.DeskingForm.valueElements[1].elementGroupName = "used";
result.DeskingForm.valueElements[2].baseElementId = 6;
result.DeskingForm.valueElements[2].name = "APR";
result.DeskingForm.valueElements[2].seqNumber = 1;
result.DeskingForm.valueElements[2].isDisplayed = 1;
result.DeskingForm.valueElements[2].alignment = "right";
result.DeskingForm.valueElements[2].elementType = new Object();
result.DeskingForm.valueElements[2].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[2].elementType.name = "value";
result.DeskingForm.valueElements[2].dealType = new Object();
result.DeskingForm.valueElements[2].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[2].dealType.name = "loan";
result.DeskingForm.valueElements[2].elementGroupName = "used";
result.DeskingForm.valueElements[3].baseElementId = 6;
result.DeskingForm.valueElements[3].name = "Amount Financed";
result.DeskingForm.valueElements[3].seqNumber = 1;
result.DeskingForm.valueElements[3].isDisplayed = 1;
result.DeskingForm.valueElements[3].alignment = "right";
result.DeskingForm.valueElements[3].elementType = new Object();
result.DeskingForm.valueElements[3].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[3].elementType.name = "value";
result.DeskingForm.valueElements[3].dealType = new Object();
result.DeskingForm.valueElements[3].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[3].dealType.name = "loan";
result.DeskingForm.valueElements[3].elementGroupName = "used";
result.DeskingForm.valueElements[4].baseElementId = 6;
result.DeskingForm.valueElements[4].name = "Monthly Payment";
result.DeskingForm.valueElements[4].seqNumber = 1;
result.DeskingForm.valueElements[4].isDisplayed = 1;
result.DeskingForm.valueElements[4].alignment = "right";
result.DeskingForm.valueElements[4].elementType = new Object();
result.DeskingForm.valueElements[4].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[4].elementType.name = "value";
result.DeskingForm.valueElements[4].dealType = new Object();
result.DeskingForm.valueElements[4].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[4].dealType.name = "loan";
result.DeskingForm.valueElements[4].elementGroupName = "used";
result.DeskingForm.valueElements[5].baseElementId = 6;
result.DeskingForm.valueElements[5].name = "Term";
result.DeskingForm.valueElements[5].seqNumber = 2;
result.DeskingForm.valueElements[5].isDisplayed = 1;
result.DeskingForm.valueElements[5].alignment = "right";
result.DeskingForm.valueElements[5].elementType = new Object();
result.DeskingForm.valueElements[5].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[5].elementType.name = "value";
result.DeskingForm.valueElements[5].dealType = new Object();
result.DeskingForm.valueElements[5].dealType.dealTypeId = 2;
result.DeskingForm.valueElements[5].dealType.name = "lease";
result.DeskingForm.valueElements[5].elementGroupName = "used";
result.DeskingForm.valueElements[6].baseElementId = 6;
result.DeskingForm.valueElements[6].name = "Money Factor";
result.DeskingForm.valueElements[6].seqNumber = 2;
result.DeskingForm.valueElements[6].isDisplayed = 1;
result.DeskingForm.valueElements[6].alignment = "right";
result.DeskingForm.valueElements[6].elementType = new Object();
result.DeskingForm.valueElements[6].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[6].elementType.name = "value";
result.DeskingForm.valueElements[6].dealType = new Object();
result.DeskingForm.valueElements[6].dealType.dealTypeId = 2;
result.DeskingForm.valueElements[6].dealType.name = "lease";
result.DeskingForm.valueElements[6].elementGroupName = "used";
result.DeskingForm.valueElements[7].baseElementId = 6;
result.DeskingForm.valueElements[7].name = "Amount Financed";
result.DeskingForm.valueElements[7].seqNumber = 1;
result.DeskingForm.valueElements[7].isDisplayed = 1;
result.DeskingForm.valueElements[7].alignment = "right";
result.DeskingForm.valueElements[7].elementType = new Object();
result.DeskingForm.valueElements[7].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[7].elementType.name = "value";
result.DeskingForm.valueElements[7].dealType = new Object();
result.DeskingForm.valueElements[7].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[7].dealType.name = "loan";
result.DeskingForm.valueElements[7].elementGroupName = "used";
result.DeskingForm.valueElements[8].baseElementId = 6;
result.DeskingForm.valueElements[8].name = "Monthly Payment";
result.DeskingForm.valueElements[8].seqNumber = 1;
result.DeskingForm.valueElements[8].isDisplayed = 1;
result.DeskingForm.valueElements[8].alignment = "right";
result.DeskingForm.valueElements[8].elementType = new Object();
result.DeskingForm.valueElements[8].elementType.elementTypeId = 4;
result.DeskingForm.valueElements[8].elementType.name = "value";
result.DeskingForm.valueElements[8].dealType = new Object();
result.DeskingForm.valueElements[8].dealType.dealTypeId = 1;
result.DeskingForm.valueElements[8].dealType.name = "loan";
result.DeskingForm.valueElements[8].elementGroupName = "used";
result.DeskingForm.calcElements = new Array(new Object(), new Object());
result.DeskingForm.calcElements[0].baseElementId = 6;
result.DeskingForm.calcElements[0].name = "Monthly Payment";
result.DeskingForm.calcElements[0].seqNumber = 1;
result.DeskingForm.calcElements[0].isDisplayed = 1;
result.DeskingForm.calcElements[0].alignment = "right";
result.DeskingForm.calcElements[0].formElementId = 5;
result.DeskingForm.calcElements[0].elementType = new Object();
result.DeskingForm.calcElements[0].elementType.elementTypeId = 6;
result.DeskingForm.calcElements[0].elementType.name = "compare_loan_matrix";
result.DeskingForm.calcElements[0].dealType = new Object();
result.DeskingForm.calcElements[0].dealType.dealTypeId = 1;
result.DeskingForm.calcElements[0].dealType.name = "loan";
result.DeskingForm.calcElements[1].baseElementId = 6;
result.DeskingForm.calcElements[1].name = "Monthly Payment";
result.DeskingForm.calcElements[1].seqNumber = 2;
result.DeskingForm.calcElements[1].isDisplayed = 1;
result.DeskingForm.calcElements[1].alignment = "right";
result.DeskingForm.calcElements[1].formElementId = 9;
result.DeskingForm.calcElements[1].elementType = new Object();
result.DeskingForm.calcElements[1].elementType.elementTypeId = 6;
result.DeskingForm.calcElements[1].elementType.name = "compare_lease_matrix";
result.DeskingForm.calcElements[1].dealType = new Object();
result.DeskingForm.calcElements[1].dealType.dealTypeId = 2;
result.DeskingForm.calcElements[1].dealType.name = "lease";
result.DeskingForm.matrixElements = new Array(new Object(), new Object(), new Object(), new Object(), new Object());
result.DeskingForm.matrixElements[0].isDisplayed = true;
result.DeskingForm.matrixElements[0].elementType = new Object();
result.DeskingForm.matrixElements[0].elementType.elementTypeId = 6;
result.DeskingForm.matrixElements[0].elementType.name = "matrix";
result.DeskingForm.matrixElements[0].name = "compare_loan_matrix";
result.DeskingForm.matrixElements[0].dealType = new Object();
result.DeskingForm.matrixElements[0].dealType.dealTypeId = 1;
result.DeskingForm.matrixElements[0].dealType.name = "loan";
result.DeskingForm.matrixElements[0].title = "Loan";
result.DeskingForm.matrixElements[0].isDisplayTerm = true;
result.DeskingForm.matrixElements[1].isDisplayed = true;
result.DeskingForm.matrixElements[1].elementType = new Object();
result.DeskingForm.matrixElements[1].elementType.elementTypeId = 6;
result.DeskingForm.matrixElements[1].elementType.name = "matrix"
result.DeskingForm.matrixElements[1].name = "compare_lease_matrix";
result.DeskingForm.matrixElements[1].dealType = new Object();
result.DeskingForm.matrixElements[1].dealType.dealTypeId = 2;
result.DeskingForm.matrixElements[1].dealType.name = "lease";
result.DeskingForm.matrixElements[1].title = "Lease";
result.DeskingForm.matrixElements[1].isDisplayTerm = true;
result.DeskingForm.matrixElements[2].isDisplayed = false; //change to true to see Balloon
result.DeskingForm.matrixElements[2].elementType = new Object();
result.DeskingForm.matrixElements[2].elementType.elementTypeId = 6;
result.DeskingForm.matrixElements[2].elementType.name = "matrix";
result.DeskingForm.matrixElements[2].name = "compare_balloon_matrix";
result.DeskingForm.matrixElements[2].dealType = new Object();
result.DeskingForm.matrixElements[2].dealType.dealTypeId = 3;
result.DeskingForm.matrixElements[2].dealType.name = "balloon";
result.DeskingForm.matrixElements[2].title = "Balloon";
result.DeskingForm.matrixElements[2].isDisplayTerm = true;
result.DeskingForm.matrixElements[3].isDisplayed = true;
result.DeskingForm.matrixElements[3].elementType = new Object();
result.DeskingForm.matrixElements[3].elementType.elementTypeId = 6;
result.DeskingForm.matrixElements[3].elementType.name = "matrix";
result.DeskingForm.matrixElements[3].name = "compare_loan_cashDeal";
result.DeskingForm.matrixElements[3].dealType = new Object();
result.DeskingForm.matrixElements[3].dealType.dealTypeId = 4;
result.DeskingForm.matrixElements[3].dealType.name = "cash";
result.DeskingForm.matrixElements[3].title = "Cash Deal";
result.DeskingForm.matrixElements[3].isDisplayTerm = true;
result.DeskingForm.matrixElements[4].isDisplayed = true;
result.DeskingForm.matrixElements[4].elementType = new Object();
result.DeskingForm.matrixElements[4].dealType = new Object();
result.DeskingForm.matrixElements[4].elementType = new Object();
result.DeskingForm.matrixElements[4].elementType.elementTypeId = 6;
result.DeskingForm.matrixElements[4].elementType.name = "matrix"
result.DeskingForm.matrixElements[4].name = "compare_lease_onePay";
result.DeskingForm.matrixElements[4].dealType = new Object();
result.DeskingForm.matrixElements[4].dealType.dealTypeId = 6;
result.DeskingForm.matrixElements[4].dealType.name = "onepay";
result.DeskingForm.matrixElements[4].title = "Lease One Pay";
result.DeskingForm.matrixElements[4].isDisplayTerm = true;
result.DeskingForm.expandValueElements = new Array();
result.DeskingForm.expandCalcElements = new Array();
return result;
}
Copy link to clipboard
Copied
So was this ever solved? I see "illegal instruction: 4" and "bus error" errors when packaging for iOS and it's been three long years since you "filled the internal bug". I'm using AIR 21, what are my options here?
Copy link to clipboard
Copied
Hi,
How do we reproduce this bug? The above code snippet does not look complete to me.
-Roshan
Adobe AIR
Copy link to clipboard
Copied
For me the problem was building an IPA with externalSWFs. I guess you could just try to experiment a bit and finally narrow it down, because it's there for 3 years now! For 3 years iOS build would crash and this still isn't fixed, I mean, come on, how is this even possible? It's a major mobile platform, nothing event gets close to it if we're talking about sales and you leave it broken because of an incomplete code snippet?
Copy link to clipboard
Copied
If you take the stand alone function I pasted above and put it in the root mxml file for a new adobe air for ios project you should be able to reproduce the problem.