Skip to content

Commit 2bb4cb3

Browse files
committed
Don't NullRef when performing Get-AzureDeployment when the cloud service has extended configuration
1 parent 6a689a9 commit 2bb4cb3

File tree

2 files changed

+17
-4
lines changed

2 files changed

+17
-4
lines changed

src/ServiceManagement/Compute/Commands.ServiceManagement/Model/CertificateConfiguration.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,7 @@ public class CertificateConfiguration
1919
public string Thumbprint { get; set; }
2020

2121
public string ThumbprintAlgorithm { get; set; }
22+
23+
public string SourceLocation { get; set; }
2224
}
2325
}

src/ServiceManagement/Compute/Commands.ServiceManagement/Model/RoleConfiguration.cs

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,9 @@ public RoleConfiguration(XElement data)
4545
{
4646
var certificate = new CertificateConfiguration
4747
{
48-
Thumbprint = setting.Attribute("thumbprint").Value,
49-
ThumbprintAlgorithm = setting.Attribute("thumbprintAlgorithm").Value
48+
Thumbprint = setting.Attribute("thumbprint") == null ? null : setting.Attribute("thumbprint").Value,
49+
ThumbprintAlgorithm = setting.Attribute("thumbprintAlgorithm") == null ? null : setting.Attribute("thumbprintAlgorithm").Value,
50+
SourceLocation = setting.Attribute("sourceLocation") == null ? null : setting.Attribute("sourceLocation").Value,
5051
};
5152

5253
this.Certificates.Add(setting.Attribute("name").Value, certificate);
@@ -104,8 +105,18 @@ internal XElement Serialize()
104105
{
105106
XElement certificateElement = new XElement(this.ns + "Certificate");
106107
certificateElement.SetAttributeValue("name", certificate.Key);
107-
certificateElement.SetAttributeValue("thumbprint", certificate.Value.Thumbprint);
108-
certificateElement.SetAttributeValue("thumbprintAlgorithm", certificate.Value.ThumbprintAlgorithm);
108+
if (certificate.Value.Thumbprint != null)
109+
{
110+
certificateElement.SetAttributeValue("thumbprint", certificate.Value.Thumbprint);
111+
}
112+
if (certificate.Value.ThumbprintAlgorithm != null)
113+
{
114+
certificateElement.SetAttributeValue("thumbprintAlgorithm", certificate.Value.ThumbprintAlgorithm);
115+
}
116+
if (certificate.Value.SourceLocation != null)
117+
{
118+
certificateElement.SetAttributeValue("sourceLocation", certificate.Value.SourceLocation);
119+
}
109120
certificatesElement.Add(certificateElement);
110121
}
111122

0 commit comments

Comments
 (0)