Skip to content

Fix NRE in XLiffBody.AddTransUnit when tu.Source is null - #153

Merged
imnasnainaec merged 11 commits into
masterfrom
fix/149-nre-addtransunit
Jul 8, 2026
Merged

Fix NRE in XLiffBody.AddTransUnit when tu.Source is null#153
imnasnainaec merged 11 commits into
masterfrom
fix/149-nre-addtransunit

Merge branch 'master' into fix/149-nre-addtransunit

f574733
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Test Results succeeded Jun 29, 2026 in 0s

All 182 tests pass, 5 skipped in 37s

    7 files  ±  0  124 suites  +20   37s ⏱️ +12s
187 tests +15  182 ✔️ +15    5 💤 ±0  0 ±0 
714 runs  +60  699 ✔️ +60  15 💤 ±0  0 ±0 

Results for commit f574733. ± Comparison against earlier commit bf8a103.

Annotations

Check notice on line 0 in .github

See this annotation in the file changed.

@github-actions github-actions / Test Results

5 skipped tests found

There are 5 skipped tests, see "Raw output" for the full list of skipped tests.
Raw output
MakeIdTest_ForColumnHeader
MakeIdTest_ForDataGridViewColumn
PrepareDataGridViewColumnsTests
PrepareListViewColumnHeadersTests
SetId_Null_DoesNotCrash

Check notice on line 0 in .github

See this annotation in the file changed.

@github-actions github-actions / Test Results

187 tests found

There are 187 tests, see "Raw output" for the full list of tests.
Raw output
AddTransUnit_NullSourceNullTarget_DoesNotThrow
CheckSubstitutionMarkers_1
CheckSubstitutionMarkers_10
CheckSubstitutionMarkers_11
CheckSubstitutionMarkers_12
CheckSubstitutionMarkers_13
CheckSubstitutionMarkers_14
CheckSubstitutionMarkers_15
CheckSubstitutionMarkers_16
CheckSubstitutionMarkers_17
CheckSubstitutionMarkers_18
CheckSubstitutionMarkers_2
CheckSubstitutionMarkers_3
CheckSubstitutionMarkers_4
CheckSubstitutionMarkers_5
CheckSubstitutionMarkers_6
CheckSubstitutionMarkers_7
CheckSubstitutionMarkers_8
CheckSubstitutionMarkers_9
Constructor_BogusFormatString_Throws("Blah {-1}")
Constructor_BogusFormatString_Throws("Blah {2}")
Constructor_BogusFormatString_Throws("Blah {a}")
Constructor_FormatStringHasNoParams_MessageEqualsFormatString("en")
Constructor_FormatStringHasNoParams_MessageEqualsFormatString("fr")
Constructor_RequestedCultureEnglishFormatStringHasNoParam1_MessageHasEnglishSubstitutedAsAparam0
Constructor_RequestedCultureEnglish_MessageOnlyHasEnglishOnceAndNonEnglishActionIsNotRun
Constructor_RequestedCultureTypicalNonEnglish_MessageHasNativeNameAndEnglishNameAndNonEnglishActionIsRun
Constructor_RequestedCultureWithNativeNameEqualToEnglishName_MessageOnlyLanguageNameOnceAndNonEnglishActionIsRun
CreateOrUpdateDefaultTranslationFileIfNecessary_CopiesInstalledIfAvailable
CreateOrUpdateDefaultTranslationFileIfNecessary_CopiesOverEmptyGeneratedFile
CreateOrUpdateDefaultTranslationFileIfNecessary_Missing_IncludesStringsFromCustomLocalizationMethods("Localize")
CreateOrUpdateDefaultTranslationFileIfNecessary_Missing_IncludesStringsFromCustomLocalizationMethods("MyOwnGetString")
CreateOrUpdateDefaultTranslationFileIfNecessary_Missing_IncludesStringsFromCustomLocalizationMethods("MyOwnGetString","Localize")
CreateOrUpdateDefaultTranslationFileIfNecessary_Missing_IncludesStringsFromCustomLocalizationMethods()
CreateOrUpdateDefaultTranslationFileIfNecessary_Outdated_OverwritesOutdatedGeneratedFile
CreateOrUpdateDefaultTranslationFileIfNecessary_UpToDate_DoesNotOverwriteUpToDateGeneratedFile
Create_PreferredUiLanguageIsGenericVariant_CreatesLocalizationManagerForSpecificVariant("es","es-ES")
Create_PreferredUiLanguageIsGenericVariant_CreatesLocalizationManagerForSpecificVariant("pt","pt-PT")
CustomTranslation_TakesPrecedenceOverInstalled_WithLanguageCodeFolders
FindLocalizedStringsInType_RequestNamespaceForSubclass_DoNotExtractStringsForSuperclassWithDifferentNamespace
FixBrokenFormattingString_Works_1
FixBrokenFormattingString_Works_10
FixBrokenFormattingString_Works_11
FixBrokenFormattingString_Works_12
FixBrokenFormattingString_Works_13
FixBrokenFormattingString_Works_14
FixBrokenFormattingString_Works_2
FixBrokenFormattingString_Works_3
FixBrokenFormattingString_Works_4
FixBrokenFormattingString_Works_5
FixBrokenFormattingString_Works_6
FixBrokenFormattingString_Works_7
FixBrokenFormattingString_Works_8
FixBrokenFormattingString_Works_9
FixBrokenSubstitution_Works_1
FixBrokenSubstitution_Works_10
FixBrokenSubstitution_Works_11
FixBrokenSubstitution_Works_12
FixBrokenSubstitution_Works_2
FixBrokenSubstitution_Works_3
FixBrokenSubstitution_Works_4
FixBrokenSubstitution_Works_5
FixBrokenSubstitution_Works_6
FixBrokenSubstitution_Works_7
FixBrokenSubstitution_Works_8
FixBrokenSubstitution_Works_9
FractionApproved("ar")
FractionApproved("en")
FractionApproved("es")
FractionApproved("fr")
FractionApproved("ii")
FractionTranslated("ar")
FractionTranslated("en")
FractionTranslated("es")
FractionTranslated("fr")
FractionTranslated("ii")
GetAvailableUILanguageTags_FindsThreeLanguages
GetDynamicStringInEnglish_NoDefault_FindsEnglish
GetDynamicStringInEnglish_NoDefault_FindsEnglishWithFolders
GetDynamicStringOrEnglish("ar","en")
GetDynamicStringOrEnglish("en","en")
GetDynamicStringOrEnglish("en","fr")
GetDynamicStringOrEnglish("fr","fr")
GetDynamicStringOrEnglish_LmDisposed_GivesUsefulException
GetDynamicStringOrEnglish_NoManagerLoaded_NonEnglish_ReturnsId("en")
GetDynamicStringOrEnglish_NoManagerLoaded_NonEnglish_ReturnsId("es")
GetDynamicStringOrEnglish_NoManagerLoaded_NonEnglish_ReturnsId(null)
GetDynamicStringOrEnglish_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(" ")
GetDynamicStringOrEnglish_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText("")
GetDynamicStringOrEnglish_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(null)
GetDynamicString_ArabicTranslationHasArabicValue_ArabicTranslationWins
GetDynamicString_EnglishAndArabicHaveDifferentValuesOfEnglishString_EnglishTranslationWins
GetDynamicString_EnglishTranslationHasDIfferentStringThanParamater_ParameterWins
GetDynamicString_NoManagerLoaded_EnglishNotNull_ReturnsEnglishString
GetDynamicString_NoManagerLoaded_EnglishNull_ReturnsId("en")
GetDynamicString_NoManagerLoaded_EnglishNull_ReturnsId("es")
GetDynamicString_NoManagerLoaded_EnglishNull_ReturnsId(null)
GetDynamicString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(" ")
GetDynamicString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText("")
GetDynamicString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(null)
GetLocalizedObjectInfoTest
GetPropertyOnExistingMethod_Works
GetPropertyOnMissingMethod_ReturnsNull
GetSetTests
GetShortcutKeysOnToolStripButton_ReturnsNull
GetString_NoManagerLoaded_StrictInitializationModeFalse_DoesNotThrow("en")
GetString_NoManagerLoaded_StrictInitializationModeFalse_DoesNotThrow("en-US")
GetString_NoManagerLoaded_StrictInitializationModeFalse_DoesNotThrow("es")
GetString_NoManagerLoaded_StrictInitializationModeFalse_DoesNotThrow("es-ES")
GetString_NoManagerLoaded_StrictInitializationModeFalse_DoesNotThrow("es-MX")
GetString_NoManagerLoaded_StrictInitializationModeTrue_Throws("en")
GetString_NoManagerLoaded_StrictInitializationModeTrue_Throws("en-US")
GetString_NoManagerLoaded_StrictInitializationModeTrue_Throws("es")
GetString_NoManagerLoaded_StrictInitializationModeTrue_Throws("es-ES")
GetString_NoManagerLoaded_StrictInitializationModeTrue_Throws("es-MX")
GetString_UsesFallbackLanguages
GetString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(" ")
GetString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText("")
GetString_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(null)
GetString_WithOneShotEnumerable_UsesPreferredLanguages
GetString_WithPreferredLanguageIds_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(" ")
GetString_WithPreferredLanguageIds_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText("")
GetString_WithPreferredLanguageIds_WithNullOrEmptyOrWhitespaceId_ReturnsFallbackText(null)
GetUiLanguages_AzeriHasHackedNativeName
GetUiLanguages_EnglishIsThere
GetUiLanguages_FindsAll
GetUiLanguages_FindsAllWithFolders
InstanceDoesNotHaveUnexpectedProperty
InstanceHasExpectedProperty
L10NCultureInfo_TestEn
L10NCultureInfo_TestList
L10NCultureInfo_TestPTp
L10NCultureInfo_TestPbu
MakeIdTest_ForColumnHeader
MakeIdTest_ForControl
MakeIdTest_ForDataGridViewColumn
MakeIdTest_ForForm
MergeXliffDocuments_BaselineUnitHasNullSource_DoesNotThrow
MergeXliffDocuments_RunTwice_DoesNotDuplicateNotFoundNotes
MergeXliffDocuments_StringFoundAfterBeingMissing_RemovesNotFoundNote
MergeXliffDocuments_WorksAsExpected
MethodNeedsLocalization_Uses_NoLocalizableStringsPresentAttribute_Test
OrphanLogicNotUsedForEnglish
OrphanLogicNotUsed_WithWrongEnglishSource
OrphanLogicUsedForArabic_ButNotIfFoundInEnglishTranslation
PrepareDataGridViewColumnsTests
PrepareListViewColumnHeadersTests
SetId_Null_DoesNotCrash
TestCounts
TestHeaderNotes
TestInexactLanguageMatching
TestLocalizingALocalizableComponent
TestMappingLanguageCodesToAvailable
TestMappingLanguageCodesToAvailable_AmbiguousOptions_PromptsUser("zh-CN")
TestMappingLanguageCodesToAvailable_AmbiguousOptions_PromptsUser("zh-TW")
TestMappingLanguageCodesToAvailable_FindsSpecificGivenGeneric
TestReturningAllStrings
TestReturningHtmlMarkup
TestReturningOnlyApprovedStrings
TranslateStrings_ChangeTranslator_TranslationAppliedToOriginalString
TranslateStrings_RequestedCultureEnglish_TranslationAppliedOnceToEachString
TranslateStrings_RequestedCultureGermanNormalTranslation_TranslationAppliedOnceToEachString
TranslateStrings_RequestedCultureSpanishChokesOnFormatParam_TranslationReappliedToStringWithoutParam
TranslateStrings_TranslatorReturnsSourceString_NoAttemptToSubstituteEnglishNameOrTranslateOtherStrings
TranslateStrings_TranslatorThrowsException_ExceptionSwallowedAndNoAttemptToTranslateOtherStrings
TranslationWithNewlineReplacement_YieldsStandardizedNewline
TypeDoesNotHaveUnexpectedProperty
TypeHasExpectedProperty
UpdateLocalizedInfo_WithNullOrEmptyOrWhitespaceId_DoesNotAddEntry(" ")
UpdateLocalizedInfo_WithNullOrEmptyOrWhitespaceId_DoesNotAddEntry("")
UpdateLocalizedInfo_WithNullOrEmptyOrWhitespaceId_DoesNotAddEntry(null)
ValidateFlatFilesAgainstSchema
ValidateInFoldersAgainstSchema
ar,en; finds en
ar,en; finds en in folders
ar,fr,en; finds fr
ar,fr,en; finds fr in folders
en,fr; finds en
en,fr; finds en in folders
en; finds en
en; finds en in folders
fr,en; finds fr
fr,en; finds fr in folders
fr; finds fr
fr; finds fr in folders
zz,en,fr; finds en
zz,en,fr; finds en in folders