Skip to content

Commit 27e9bf8

Browse files
authored
Merge pull request #10649 from erich-wang/fix-null-context
Fix null ref in generated cmdlets when context is not set
2 parents 6c0a163 + 2511717 commit 27e9bf8

File tree

4 files changed

+19
-0
lines changed

4 files changed

+19
-0
lines changed

src/Accounts/Accounts/ChangeLog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
## Upcoming Release
2121
* Update references in .psd1 to use relative path
2222
* Set correct UserAgent for client-side telemetry for Az 4.0 preview
23+
* Display user friendly error message when context is null in Az 4.0
2324

2425
## Version 1.6.4
2526
* Add a deprecation message for `Resolve-Error` alias.

src/Accounts/Accounts/CommonModule/ContextAdapter.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
2626
using System.Linq;
2727
using System.Management.Automation;
28+
using Microsoft.Azure.Commands.Profile.Properties;
2829

2930
namespace Microsoft.Azure.Commands.Common
3031
{
@@ -170,6 +171,11 @@ internal Func<HttpRequestMessage, CancellationToken, Action, SignalDelegate, Nex
170171
/// <returns></returns>
171172
internal async Task AuthorizeRequest(IAzureContext context, string resourceId, HttpRequestMessage request, CancellationToken outerToken)
172173
{
174+
if (context == null || context.Account == null || context.Environment == null)
175+
{
176+
throw new InvalidOperationException(Resources.InvalidAzureContext);
177+
}
178+
173179
await Task.Run(() =>
174180
{
175181
resourceId = context?.Environment?.GetAudienceFromRequestUri(request.RequestUri) ?? resourceId;

src/Accounts/Accounts/Properties/Resources.Designer.cs

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Accounts/Accounts/Properties/Resources.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -465,4 +465,7 @@
465465
<data name="SovereignProfileDescription" xml:space="preserve">
466466
<value>A snapshot of the service API versiosn available in Azure Sovereign Clouds and the Azure Global Cloud.</value>
467467
</data>
468+
<data name="InvalidAzureContext" xml:space="preserve">
469+
<value>The context is invalid. Please login using Connect-AzAccount.</value>
470+
</data>
468471
</root>

0 commit comments

Comments
 (0)