Skip to content

[Bug]: ControlManifest.Input.xml files that contain a "<" within an attribute value prevents the control from being loaded. #68

@pr0ctor

Description

@pr0ctor

Contact Details

No response

What happened?

I created a PCF Control and when trying to load the control using this plugin it gave the following message:
"An error occured while retrieving existing project details. Please report an issue on GitHub Page" and no other information.

After some investigation, I found that the plugin failed when I reenabled a <property /> which included the text <code> within an attribute value. A full example would look like this:
<property name="name" display-name-key="name" description-key="Name <name>" of-type="SingleLine.Text" usage="bound" required="true" />

It also works when there is a > but doesn't work when there is the opening < anywhere within the attribute string value. Updating the value from the user interface and attempting to add either > or < parses it out into $gt; and $lt; respectively, but there's no indication regarding why its failing to open the control when not HTML encoded. This issue likely occurs with the occurrence of any < in any attribute string value in the entire xml file but I did not do exhaustive testing.

I downgraded by a few versions to see if it had worked there but it did not. The same thing occurs on the newest version of the plugin tool. I am using the newest version of XrmToolBox.

XrmToolBox generated an exception trace log and the most relevant portions of the log are as follows:

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Maverick.PCF.Builder.PCFBuilder.PopulateControlDetails()
   at Maverick.PCF.Builder.PCFBuilder.PCFBuilder_Load(Object sender, EventArgs e)
   at System.Windows.Forms.UserControl.OnLoad(EventArgs e)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

What version of the tool are you using?

2.2023.6.162

What version of XrmToolBox are you running?

No response

Relevant log output

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
   at Maverick.PCF.Builder.PCFBuilder.PopulateControlDetails()
   at Maverick.PCF.Builder.PCFBuilder.PCFBuilder_Load(Object sender, EventArgs e)
   at System.Windows.Forms.UserControl.OnLoad(EventArgs e)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Form.WmShowWindow(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Metadata

Metadata

Labels

bugSomething isn't workingtriage

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions