Skip to content

Commit 657ba51

Browse files
committed
mlavik1#24: Don't fail DICOm import just because of datetime encoding error (we don't use this data anyway).
1 parent ad285e7 commit 657ba51

File tree

1 file changed

+15
-15
lines changed
  • Assets/3rdparty/openDicom/Encoding

1 file changed

+15
-15
lines changed

Assets/3rdparty/openDicom/Encoding/DT.cs

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -83,15 +83,15 @@ protected override Array DecodeImproper(byte[] bytes)
8383
}
8484
catch (Exception e)
8585
{
86-
throw new EncodingException(
87-
"Date time format is invalid.", Tag,
88-
Name + "/item", item);
86+
UnityEngine.Debug.LogWarning($"Date time format is invalid. tag: {Tag}, name: {Name}");
87+
dateTime[i] = System.DateTime.Now;
8988
}
9089
}
9190
else
92-
throw new EncodingException(
93-
"Date time format is invalid.", Tag, Name + "/item",
94-
item);
91+
{
92+
UnityEngine.Debug.LogWarning($"Date time format is invalid. tag: {Tag}, name: {Name}");
93+
dateTime[i] = System.DateTime.Now;
94+
}
9595
}
9696
}
9797
return dateTime;
@@ -123,30 +123,30 @@ protected override Array DecodeProper(byte[] bytes)
123123
string second = "0";
124124
if (item.Length > 12) second = item.Substring(12, 2);
125125
string millisecond = "0";
126-
if (item.Length > 14)
126+
if (item.Length > 14)
127127
millisecond = item.Substring(14, 6);
128128
string timeZone = "+0";
129-
if (item.Length > 20)
129+
if (item.Length > 20)
130130
timeZone = item.Substring(20, 5);
131131
// TODO: What to do with the time zone?
132132
try
133133
{
134-
dateTime[i] = new System.DateTime(int.Parse(year),
134+
dateTime[i] = new System.DateTime(int.Parse(year),
135135
int.Parse(month), int.Parse(day), int.Parse(hour),
136136
int.Parse(minute), int.Parse(second),
137137
int.Parse(millisecond));
138138
}
139139
catch (Exception e)
140140
{
141-
throw new EncodingException(
142-
"Date time format is invalid.", Tag,
143-
Name + "/item", item);
141+
UnityEngine.Debug.LogWarning($"Date time format is invalid. tag: {Tag}, name: {Name}");
142+
dateTime[i] = System.DateTime.Now;
144143
}
145144
}
146145
else
147-
throw new EncodingException(
148-
"Date time format is invalid.", Tag, Name + "/item",
149-
item);
146+
{
147+
UnityEngine.Debug.LogWarning($"Date time format is invalid. tag: {Tag}, name: {Name}");
148+
dateTime[i] = System.DateTime.Now;
149+
}
150150
}
151151
}
152152
return dateTime;

0 commit comments

Comments
 (0)