Skip to content

Commit 6b63607

Browse files
committed
ReOpened handler failed when the system reopened the incident
1 parent 6b6108f commit 6b63607

File tree

8 files changed

+90
-73
lines changed

8 files changed

+90
-73
lines changed

src/Server/Coderr.Server.Abstractions/Security/ClaimsExtensions.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@ public static int GetAccountId(this ClaimsPrincipal principal)
3737
throw new InvalidOperationException(
3838
"Failed to find ClaimTypes.NameIdentifier, user is probably not logged in.");
3939

40-
return int.Parse(claim.Value);
40+
if (!int.TryParse(claim.Value, out var userId))
41+
throw new FormatException(
42+
$"UserId {claim.Value} is not a number. All claims: {principal.ToFriendlyString()}");
43+
44+
return userId;
4145
}
4246

4347
/// <summary>

src/Server/Coderr.Server.App/Modules/History/Events/IncidentReOpenedHandler.cs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,12 @@ public IncidentReOpenedHandler(IHistoryRepository repository)
2020

2121
public async Task HandleAsync(IMessageContext context, IncidentReOpened message)
2222
{
23-
// Can be reopened by the system
24-
int? accountId = context.Principal.GetAccountId();
25-
if (accountId == 0)
26-
{
27-
if (context.Principal.IsInRole(CoderrRoles.System))
28-
accountId = null;
29-
else
30-
throw new InvalidOperationException("Expected either the system or a specified account.");
31-
}
23+
int? accountId;
24+
25+
if (context.Principal.IsInRole(CoderrRoles.System))
26+
accountId = null;
27+
else
28+
accountId = context.Principal.GetAccountId();
3229

3330

3431
var e = new HistoryEntry(message.IncidentId, accountId, IncidentState.ReOpened)

src/Server/Coderr.Server.App/Modules/Messaging/Commands/SendEmailHandler.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ public async Task HandleAsync(IMessageContext context, SendEmail command)
3131

3232
var baseConfig = _configStore.Load<BaseConfiguration>();
3333

34+
// Emails have been disabled. Typically just in LIVE.
35+
if (string.IsNullOrEmpty(baseConfig.SupportEmail))
36+
return;
37+
3438
var email = new MailMessage
3539
{
3640
From = new MailAddress(baseConfig.SupportEmail),

src/Server/Coderr.Server.SqlServer/UnitOfWorkWithTransaction.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ public void Dispose()
3131
Transaction.Rollback();
3232
Transaction.Dispose();
3333
Transaction = null;
34-
connection.Dispose();
34+
35+
connection?.Dispose();
3536
_logger.Info("Rolled back " + GetHashCode());
3637
}
3738

src/Server/Coderr.Server.Web/Boot/Modules/DbConnectionConfig.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System.Data;
1+
using System;
2+
using System.Data;
23
using System.Data.SqlClient;
34
using Coderr.Server.Abstractions.Boot;
45
using Coderr.Server.SqlServer;
@@ -25,6 +26,10 @@ public void Configure(ConfigurationContext context)
2526
public IDbConnection OpenConnection()
2627
{
2728
var db = _config.GetConnectionString("Db");
29+
if (db == null)
30+
{
31+
throw new InvalidOperationException("Missing the connection string 'Db'.");
32+
}
2833
var con = new SqlConnection(db);
2934
con.Open();
3035
return con;

src/Server/Coderr.Server.Web/wwwroot/dist/main.js

Lines changed: 60 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
/******/
6060
/******/
6161
/******/ var hotApplyOnUpdate = true;
62-
/******/ var hotCurrentHash = "57b2e7f61864d627684d"; // eslint-disable-line no-unused-vars
62+
/******/ var hotCurrentHash = "8b2c1e698c8d7b7cd795"; // eslint-disable-line no-unused-vars
6363
/******/ var hotCurrentModuleData = {};
6464
/******/ var hotCurrentChildModule; // eslint-disable-line no-unused-vars
6565
/******/ var hotCurrentParents = []; // eslint-disable-line no-unused-vars
@@ -5255,7 +5255,7 @@ return hooks;
52555255
/* 1 */
52565256
/***/ (function(module, exports, __webpack_require__) {
52575257

5258-
module.exports = (__webpack_require__(10))(6);
5258+
module.exports = (__webpack_require__(11))(6);
52595259

52605260
/***/ }),
52615261
/* 2 */
@@ -5887,7 +5887,7 @@ function applyToTag (styleElement, obj) {
58875887
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__ApiClient__ = __webpack_require__(19);
58885888
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__incidents_IncidentService__ = __webpack_require__(67);
58895889
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__applications_ApplicationService__ = __webpack_require__(66);
5890-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__PubSub__ = __webpack_require__(11);
5890+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__PubSub__ = __webpack_require__(10);
58915891
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_toastr__ = __webpack_require__(273);
58925892
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_toastr___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_toastr__);
58935893
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_jquery__ = __webpack_require__(192);
@@ -16023,12 +16023,6 @@ var ReOpenIncident = /** @class */ (function () {
1602316023

1602416024
/***/ }),
1602516025
/* 10 */
16026-
/***/ (function(module, exports) {
16027-
16028-
module.exports = vendor_15bd100ccd282834031b;
16029-
16030-
/***/ }),
16031-
/* 11 */
1603216026
/***/ (function(module, __webpack_exports__, __webpack_require__) {
1603316027

1603416028
"use strict";
@@ -16114,6 +16108,12 @@ var Topic = /** @class */ (function () {
1611416108
}());
1611516109

1611616110

16111+
/***/ }),
16112+
/* 11 */
16113+
/***/ (function(module, exports) {
16114+
16115+
module.exports = vendor_15bd100ccd282834031b;
16116+
1611716117
/***/ }),
1611816118
/* 12 */
1611916119
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -16316,6 +16316,36 @@ var UpdateRoles = /** @class */ (function () {
1631616316
/* 13 */
1631716317
/***/ (function(module, __webpack_exports__, __webpack_require__) {
1631816318

16319+
"use strict";
16320+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MessagingTopics; });
16321+
/* unused harmony export SetApplication */
16322+
/* unused harmony export ApplicationChanged */
16323+
var MessagingTopics = /** @class */ (function () {
16324+
function MessagingTopics() {
16325+
}
16326+
MessagingTopics.SetApplication = "/menu/application/set/";
16327+
MessagingTopics.ApplicationChanged = "/menu/application/changed/";
16328+
return MessagingTopics;
16329+
}());
16330+
16331+
var SetApplication = /** @class */ (function () {
16332+
function SetApplication() {
16333+
}
16334+
return SetApplication;
16335+
}());
16336+
16337+
var ApplicationChanged = /** @class */ (function () {
16338+
function ApplicationChanged() {
16339+
}
16340+
return ApplicationChanged;
16341+
}());
16342+
16343+
16344+
16345+
/***/ }),
16346+
/* 14 */
16347+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
16348+
1631916349
"use strict";
1632016350
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return GetApiKey; });
1632116351
/* unused harmony export GetApiKeyResult */
@@ -16407,36 +16437,6 @@ var EditApiKey = /** @class */ (function () {
1640716437

1640816438

1640916439

16410-
/***/ }),
16411-
/* 14 */
16412-
/***/ (function(module, __webpack_exports__, __webpack_require__) {
16413-
16414-
"use strict";
16415-
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MessagingTopics; });
16416-
/* unused harmony export SetApplication */
16417-
/* unused harmony export ApplicationChanged */
16418-
var MessagingTopics = /** @class */ (function () {
16419-
function MessagingTopics() {
16420-
}
16421-
MessagingTopics.SetApplication = "/menu/application/set/";
16422-
MessagingTopics.ApplicationChanged = "/menu/application/changed/";
16423-
return MessagingTopics;
16424-
}());
16425-
16426-
var SetApplication = /** @class */ (function () {
16427-
function SetApplication() {
16428-
}
16429-
return SetApplication;
16430-
}());
16431-
16432-
var ApplicationChanged = /** @class */ (function () {
16433-
function ApplicationChanged() {
16434-
}
16435-
return ApplicationChanged;
16436-
}());
16437-
16438-
16439-
1644016440
/***/ }),
1644116441
/* 15 */
1644216442
/***/ (function(module, exports, __webpack_require__) {
@@ -20936,17 +20936,17 @@ return Chartist;
2093620936
/* 16 */
2093720937
/***/ (function(module, exports, __webpack_require__) {
2093820938

20939-
module.exports = (__webpack_require__(10))(0);
20939+
module.exports = (__webpack_require__(11))(0);
2094020940

2094120941
/***/ }),
2094220942
/* 17 */
2094320943
/***/ (function(module, __webpack_exports__, __webpack_require__) {
2094420944

2094520945
"use strict";
2094620946
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return MyIncidents; });
20947-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_menu_MenuApi__ = __webpack_require__(14);
20947+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_menu_MenuApi__ = __webpack_require__(13);
2094820948
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_AppRoot__ = __webpack_require__(7);
20949-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__services_PubSub__ = __webpack_require__(11);
20949+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__services_PubSub__ = __webpack_require__(10);
2095020950
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__services_incidents_IncidentService__ = __webpack_require__(67);
2095120951
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2095220952
return new (P || (P = Promise))(function (resolve, reject) {
@@ -24675,7 +24675,7 @@ var ApplicationService = /** @class */ (function () {
2467524675
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return IncidentTopcis; });
2467624676
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return IncidentService; });
2467724677
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__AppRoot__ = __webpack_require__(7);
24678-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__PubSub__ = __webpack_require__(11);
24678+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__PubSub__ = __webpack_require__(10);
2467924679
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__dto_Core_Incidents__ = __webpack_require__(9);
2468024680
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2468124681
return new (P || (P = Promise))(function (resolve, reject) {
@@ -38368,7 +38368,7 @@ module.exports = function(module) {
3836838368
/* 192 */
3836938369
/***/ (function(module, exports, __webpack_require__) {
3837038370

38371-
module.exports = (__webpack_require__(10))(1);
38371+
module.exports = (__webpack_require__(11))(1);
3837238372

3837338373
/***/ }),
3837438374
/* 193 */
@@ -38916,7 +38916,7 @@ if (module) {
3891638916
/* 195 */
3891738917
/***/ (function(module, exports, __webpack_require__) {
3891838918

38919-
module.exports = (__webpack_require__(10))(3);
38919+
module.exports = (__webpack_require__(11))(3);
3892038920

3892138921
/***/ }),
3892238922
/* 196 */
@@ -41083,8 +41083,8 @@ var IncidentComponent = /** @class */ (function (_super) {
4108341083

4108441084
"use strict";
4108541085
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
41086-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(11);
41087-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(14);
41086+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(10);
41087+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(13);
4108841088
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__dto_Core_Incidents__ = __webpack_require__(9);
4108941089
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__dto_Modules_Tagging__ = __webpack_require__(245);
4109041090
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__services_applications_ApplicationService__ = __webpack_require__(66);
@@ -41505,8 +41505,8 @@ var SuggestionsComponent = /** @class */ (function (_super) {
4150541505

4150641506
"use strict";
4150741507
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
41508-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(11);
41509-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(14);
41508+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(10);
41509+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(13);
4151041510
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4151141511
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4151241512
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -41725,8 +41725,8 @@ var HomeHomeComponent = /** @class */ (function (_super) {
4172541725

4172641726
"use strict";
4172741727
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
41728-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(11);
41729-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(14);
41728+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(10);
41729+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(13);
4173041730
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__services_AppRoot__ = __webpack_require__(7);
4173141731
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue__ = __webpack_require__(1);
4173241732
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_vue_property_decorator__ = __webpack_require__(5);
@@ -42004,8 +42004,8 @@ var SupportComponent = /** @class */ (function (_super) {
4200442004

4200542005
"use strict";
4200642006
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
42007-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(11);
42008-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(14);
42007+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_PubSub__ = __webpack_require__(10);
42008+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__services_menu_MenuApi__ = __webpack_require__(13);
4200942009
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4201042010
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4201142011
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -42622,7 +42622,7 @@ var ManageAppSettingsComponent = /** @class */ (function (_super) {
4262242622
"use strict";
4262342623
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4262442624
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_AppRoot__ = __webpack_require__(7);
42625-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(13);
42625+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(14);
4262642626
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4262742627
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4262842628
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -42712,7 +42712,7 @@ var CreateApiKeyComponent = /** @class */ (function (_super) {
4271242712
"use strict";
4271342713
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4271442714
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_AppRoot__ = __webpack_require__(7);
42715-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(13);
42715+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(14);
4271642716
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4271742717
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4271842718
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -42824,7 +42824,7 @@ var EditApiKeyComponent = /** @class */ (function (_super) {
4282442824
"use strict";
4282542825
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4282642826
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_AppRoot__ = __webpack_require__(7);
42827-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(13);
42827+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(14);
4282842828
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4282942829
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4283042830
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -42895,7 +42895,7 @@ var ManageApiKeyComponent = /** @class */ (function (_super) {
4289542895
"use strict";
4289642896
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
4289742897
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__services_AppRoot__ = __webpack_require__(7);
42898-
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(13);
42898+
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__dto_Core_ApiKeys__ = __webpack_require__(14);
4289942899
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue__ = __webpack_require__(1);
4290042900
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__ = __webpack_require__(5);
4290142901
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_vue_property_decorator___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_vue_property_decorator__);
@@ -65988,19 +65988,19 @@ module.exports = function() {
6598865988
/* 403 */
6598965989
/***/ (function(module, exports, __webpack_require__) {
6599065990

65991-
module.exports = (__webpack_require__(10))(2);
65991+
module.exports = (__webpack_require__(11))(2);
6599265992

6599365993
/***/ }),
6599465994
/* 404 */
6599565995
/***/ (function(module, exports, __webpack_require__) {
6599665996

65997-
module.exports = (__webpack_require__(10))(5);
65997+
module.exports = (__webpack_require__(11))(5);
6599865998

6599965999
/***/ }),
6600066000
/* 405 */
6600166001
/***/ (function(module, exports, __webpack_require__) {
6600266002

66003-
module.exports = (__webpack_require__(10))(8);
66003+
module.exports = (__webpack_require__(11))(8);
6600466004

6600566005
/***/ }),
6600666006
/* 406 */

src/Server/Coderr.Server.Web/wwwroot/dist/main.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Server/codeRR.Server.sln

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Coderr.Server.Domain", "Cod
3131
EndProject
3232
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Coderr.Server.Web", "Coderr.Server.Web\Coderr.Server.Web.csproj", "{C3505B24-8213-45C1-BAAE-73AAA4B75955}"
3333
EndProject
34+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Coderr.Server.Web.Tests", "Coderr.Server.Web.Tests\Coderr.Server.Web.Tests.csproj", "{6F2DA622-88B9-4E51-BE46-FFF35B57454A}"
35+
EndProject
3436
Global
3537
GlobalSection(SolutionConfigurationPlatforms) = preSolution
3638
Debug|Any CPU = Debug|Any CPU
@@ -93,6 +95,10 @@ Global
9395
{C3505B24-8213-45C1-BAAE-73AAA4B75955}.Debug|Any CPU.Build.0 = Debug|Any CPU
9496
{C3505B24-8213-45C1-BAAE-73AAA4B75955}.Release|Any CPU.ActiveCfg = Release|Any CPU
9597
{C3505B24-8213-45C1-BAAE-73AAA4B75955}.Release|Any CPU.Build.0 = Release|Any CPU
98+
{6F2DA622-88B9-4E51-BE46-FFF35B57454A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
99+
{6F2DA622-88B9-4E51-BE46-FFF35B57454A}.Debug|Any CPU.Build.0 = Debug|Any CPU
100+
{6F2DA622-88B9-4E51-BE46-FFF35B57454A}.Release|Any CPU.ActiveCfg = Release|Any CPU
101+
{6F2DA622-88B9-4E51-BE46-FFF35B57454A}.Release|Any CPU.Build.0 = Release|Any CPU
96102
EndGlobalSection
97103
GlobalSection(SolutionProperties) = preSolution
98104
HideSolutionNode = FALSE

0 commit comments

Comments
 (0)