Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ideviceinstaller rejects valid ipa when there is no individual zip entry for the app directory #9

Closed
greg-dennis opened this issue Aug 15, 2014 · 2 comments

Comments

@greg-dennis
Copy link
Contributor

ipa files are in zip file format, and zip files are not required to list directories as individual entries. Because of the following four lines of code, ideviceinstaller rejects the ipa as invalid if the .app directory isn't listed individually:
https://github.com/libimobiledevice/ideviceinstaller/blob/master/src/ideviceinstaller.c#L245

Removing those four lines of code fixes the issue. Is there a case of an invalid ipa that those lines are catching?

Some zip implementations do not add directory entries by default, and some unzip implementations don't behave correctly if they are present. Those zip implementations that do list directories by default usually provide an option to do so (with the standard zip command line tool, the -D option will do this).

Thanks for all your work on this great tool!

@shanechin
Copy link

I experienced this issue while trying to play around with trigger.io:

http://stackoverflow.com/questions/25614629/why-does-forge-trigger-io-run-ios-not-install-my-application/25637688#25637688

@FunkyM
Copy link
Member

FunkyM commented Oct 2, 2014

Could you still please describe on what platform and with which tool you are creating the IPA file that causes this problem? Would like to reproduce and verify for the future.
I don't remember the exact scenario anymore but the current code logic was run against hundred thousands of IPA archives already and this wasn't evident yet.
Anyways, I've removed the four lines in git master as they should not really matter and fix your use-case.
If something fails we'll probably know soon. Thanks for reporting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants