Browse Source

Add a --info option

coverity_scan
Daniel Scharrer 8 years ago
parent
commit
e6cbea6dcb
  1. 1
      CHANGELOG
  2. 8
      doc/innoextract.1
  3. 6
      src/cli/main.cpp

1
CHANGELOG

@ -5,6 +5,7 @@ innoextract 1.7 (TDB)
- Added support for encrypted installers with the --password and --password-file options
- Added a --show-password option to print password check information
- Added a --check-password option to abort if the provided password does not match the stored checksum
- Added a --info convenience option to print information about the installer
- Fixed building in paths that contain regex expressions
- Fixed case-sensitivity in parent directory when creating subdirectories
- Fixed .bin slice file names used with Inno Setup versions older than 4.1.7

8
doc/innoextract.1

@ -34,6 +34,7 @@ Here is a short summary of the options available in innoextract. Please refer to
\-t \-\-test Only verify checksums, don't write anything
\-e \-\-extract Extract files (default action)
\-l \-\-list Only list files, don't write anything
\-i \-\-info Print information about the installer
\-\-list\-languages List languages supported by the installer
\-\-gog\-game\-id Determine the GOG.com game ID for this installer
\-\-show\-password Show password check information
@ -174,6 +175,13 @@ The expression is always matched against one or more full path components. Filte
The \fB\-\-include\fP option may be repeated in order allow files matching against one of multiple patterns. If \fB\-\-include\fP is not used, all files are processed.
.TP
\fB\-i\fP \fB\-\-info\fP
This is a convenience option to enable all actions that print information about the installer.
Scrips should not rely on the output format with this option and should instead enable the individual actions instead.
Currently this option enables \fB\-\-list\-languages\fP, \fB\-\-gog\-game\-id\fP and \fB\-\-show\-password\fP.
.TP
\fB\-\-language\fP \fILANG\fP
Extract only language-independent files and files for the given language. By default all files are extracted.

6
src/cli/main.cpp

@ -133,6 +133,7 @@ int main(int argc, char * argv[]) {
("test,t", "Only verify checksums, don't write anything")
("extract,e", "Extract files (default action)")
("list,l", "Only list files, don't write anything")
("info,i", "Print information about the installer")
("list-languages", "List languages supported by the installer")
("gog-game-id", "Determine the installer's GOG.com game ID")
("show-password", "Show password check information")
@ -252,6 +253,11 @@ int main(int argc, char * argv[]) {
o.gog_game_id = (options.count("gog-game-id") != 0);
o.show_password = (options.count("show-password") != 0);
o.check_password = (options.count("check-password") != 0);
if(options.count("info") != 0) {
o.list_languages = true;
o.gog_game_id = true;
o.show_password = true;
}
bool explicit_action = o.list || o.test || o.extract || o.list_languages
|| o.gog_game_id || o.show_password || o.check_password;
if(!explicit_action) {

Loading…
Cancel
Save