Skip to content

Need package/description check for UWP exports in can_export() #37959

@crazychenz

Description

@crazychenz

Godot version: Godot 3.2.1.stable Windows 64 (non-mono)

OS/device including version:
Microsoft Windows [Version 10.0.19041.207] (build 2004) 64bit

Issue description:
When creating a new export configuration for UWP, there are a number of fields that are indicated as required or invalid before you can export. Currently there is a discrepancy between these checks and reality, where you can not install a signed APPX file if the description length is 0. Therefore, there should be an additional check added to platform/uwp/export/export.cpp:can_export() that checks that the "package/description" field length is greater than zero.

Steps to reproduce:

  1. Create a do nothing project with a single node scene. Create an export configuration that satisfies all the settings while keeping the description blank.
  2. Export UWP/APPX
  3. Sign the APPX with signtool as indicated by the Godot documentation
  4. Install the APPX via Powershell: Add-AppxPackage C:\path\project.appx

This description requirement can be seen enforced (via XML schema verification) in the Powershell Add-AppxPackage cmdlet:

Add-AppxPackage : Deployment failed with HRESULT: 0x80080204, The Appx package's manifest is invalid.
error 0xC00CE169: App manifest validation error: The app manifest must be valid as per schema: Line 19, Column 147,
Reason: '' violates minLength constraint of '1'.
The attribute 'Description' with value '' failed to parse.
NOTE: For additional information, look for [ActivityId] 25eed3ef-1376-0005-5d5c-81267613d601 in the Event Log or use
the command line Get-AppPackageLog -ActivityID 25eed3ef-1376-0005-5d5c-81267613d601
At line:1 char:1
+ Add-AppxPackage C:\projects\playground\NullProject\NullProject.appx
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (C:\projects\pla...ullProject.appx:String) [Add-AppxPackage], Exception
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions