forked from DCMTK/dcmtk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES.365
2221 lines (1849 loc) · 88.8 KB
/
CHANGES.365
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Release 3.6.5 (Public Minor Release - 2019-10-28)
**** Changes from 2019.10.28 (schlamelcher)
- Created CHANGES.365 for DCMTK release 3.6.5:
CHANGES.365 contains the Git commit history since DCMTK release 3.6.4.
Added: docs/CHANGES.365
- Updated man pages for DCMTK release 3.6.5.
Affects: doxygen/manpages/man1/cda2dcm.1
doxygen/manpages/man1/dcm2json.1
doxygen/manpages/man1/dcm2pdf.1
doxygen/manpages/man1/dcm2pnm.1
doxygen/manpages/man1/dcm2xml.1
doxygen/manpages/man1/dcmcjpeg.1
doxygen/manpages/man1/dcmcjpls.1
doxygen/manpages/man1/dcmconv.1
doxygen/manpages/man1/dcmcrle.1
doxygen/manpages/man1/dcmdjpeg.1
doxygen/manpages/man1/dcmdjpls.1
doxygen/manpages/man1/dcmdrle.1
doxygen/manpages/man1/dcmdspfn.1
doxygen/manpages/man1/dcmdump.1
doxygen/manpages/man1/dcmftest.1
doxygen/manpages/man1/dcmgpdir.1
doxygen/manpages/man1/dcmicmp.1
doxygen/manpages/man1/dcmj2pnm.1
doxygen/manpages/man1/dcml2pnm.1
doxygen/manpages/man1/dcmmkcrv.1
doxygen/manpages/man1/dcmmkdir.1
doxygen/manpages/man1/dcmmklut.1
doxygen/manpages/man1/dcmodify.1
doxygen/manpages/man1/dcmp2pgm.1
doxygen/manpages/man1/dcmprscp.1
doxygen/manpages/man1/dcmprscu.1
doxygen/manpages/man1/dcmpschk.1
doxygen/manpages/man1/dcmpsmk.1
doxygen/manpages/man1/dcmpsprt.1
doxygen/manpages/man1/dcmpsrcv.1
doxygen/manpages/man1/dcmpssnd.1
doxygen/manpages/man1/dcmqridx.1
doxygen/manpages/man1/dcmqrscp.1
doxygen/manpages/man1/dcmqrti.1
doxygen/manpages/man1/dcmquant.1
doxygen/manpages/man1/dcmrecv.1
doxygen/manpages/man1/dcmscale.1
doxygen/manpages/man1/dcmsend.1
doxygen/manpages/man1/dcmsign.1
doxygen/manpages/man1/dcod2lum.1
doxygen/manpages/man1/dconvlum.1
doxygen/manpages/man1/drtdump.1
doxygen/manpages/man1/dsr2html.1
doxygen/manpages/man1/dsr2xml.1
doxygen/manpages/man1/dsrdump.1
doxygen/manpages/man1/dump2dcm.1
doxygen/manpages/man1/echoscu.1
doxygen/manpages/man1/findscu.1
doxygen/manpages/man1/getscu.1
doxygen/manpages/man1/img2dcm.1
doxygen/manpages/man1/movescu.1
doxygen/manpages/man1/pdf2dcm.1
doxygen/manpages/man1/stl2dcm.1
doxygen/manpages/man1/storescp.1
doxygen/manpages/man1/storescu.1
doxygen/manpages/man1/termscu.1
doxygen/manpages/man1/wlmscpfs.1
doxygen/manpages/man1/xml2dcm.1
doxygen/manpages/man1/xml2dsr.1
- Updated version information for DCMTK release 3.6.5.
Affects: CMake/dcmtkPrepare.cmake
VERSION
- Updated ANNOUNCE and INSTALL for DCMTK release 3.6.5.
Affects: ANNOUNCE
INSTALL
- Updated Autoconf config for upcoming release 3.6.5:
Updated version information.
Updated Makefile dependencies.
Affects: config/configure
config/configure.in
dcmdata/apps/Makefile.dep
dcmdata/libi2d/Makefile.dep
dcmdata/libsrc/Makefile.dep
dcmdata/tests/Makefile.dep
dcmfg/libsrc/Makefile.dep
dcmfg/tests/Makefile.dep
dcmimage/apps/Makefile.dep
dcmimage/libsrc/Makefile.dep
dcmimgle/apps/Makefile.dep
dcmimgle/libsrc/Makefile.dep
dcmiod/libsrc/Makefile.dep
dcmjpeg/apps/Makefile.dep
dcmjpeg/libsrc/Makefile.dep
dcmjpls/apps/Makefile.dep
dcmjpls/libcharls/Makefile.dep
dcmjpls/libsrc/Makefile.dep
dcmnet/apps/Makefile.dep
dcmnet/libsrc/Makefile.dep
dcmpmap/libsrc/Makefile.dep
dcmpstat/apps/Makefile.dep
dcmpstat/libsrc/Makefile.dep
dcmpstat/tests/Makefile.dep
dcmqrdb/apps/Makefile.dep
dcmqrdb/libsrc/Makefile.dep
dcmrt/libsrc/Makefile.dep
dcmrt/tests/Makefile.dep
dcmseg/libsrc/Makefile.dep
dcmsign/apps/Makefile.dep
dcmsign/libsrc/Makefile.dep
dcmsr/apps/Makefile.dep
dcmsr/libcmr/Makefile.dep
dcmsr/libsrc/Makefile.dep
dcmsr/tests/Makefile.dep
dcmtls/libsrc/Makefile.dep
dcmtract/libsrc/Makefile.dep
dcmwlm/apps/Makefile.dep
dcmwlm/libsrc/Makefile.dep
dcmwlm/tests/Makefile.dep
oflog/libsrc/Makefile.dep
ofstd/libsrc/Makefile.dep
**** Changes from 2019.10.24 (riesmeier)
- Added explaining text on invalid XML entities.
Affects: dcmdata/docs/dcm2xml.man
dcmnet/docs/findscu.man
dcmsr/docs/dsr2xml.man
ofstd/include/dcmtk/ofstd/ofstd.h
- Added new VR "OV" to list of bulk data VRs.
Affects: dcmdata/docs/dcm2xml.man
**** Changes from 2019.10.23 (schlamelcher)
- Updated DIMSE compatibility flag:
Updated DIMSE compatibility flag for the upcoming release, reflecting the
various changes in the networking code that were introduced since the last
release, e.g. corrected DIMSE status codes.
Affects: dcmnet/include/dcmtk/dcmnet/dul.h
**** Changes from 2019.10.16 (riesmeier)
- Fixed wrong return type of clone() method.
Affects: dcmdata/include/dcmtk/dcmdata/dcvrol.h
dcmdata/include/dcmtk/dcmdata/dcvrov.h
**** Changes from 2019.10.14 (schlamelcher)
- Made patching manpages platform independent:
The shell script "patchman.sh" and a call to "rm -f" was replaced with a CMake
script "patchman.cmake" such that this can now be run on Windows without
additional dependencies to a shell etc.
The existing script is kept for GNU Autconf that requires those dependencies
anyway and will be removed together with Autoconf support some time in the
future.
Added: doxygen/patchman.cmake
Affects: doxygen/CMakeLists.txt
**** Changes from 2019.10.11 (riesmeier)
- Added missing space character to log messages.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2019.10.11 (arizpegomez)
- Fix some spacing inconsistencies from last commit.
Affects: dcmdata/libsrc/dcencdoc.cc
- Included dummy values for stl2dcm:
stl2dcm returned an error if no attributes of Enhanced General Module were
explicitly entered. Now dummy values are inserted and a warning is printed.
Thanks to Holger Franke <[email protected]> for the request.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2019.10.07 (onken)
- Fixed skipping too much characters after replace.
Affects: ofstd/libsrc/ofstrutl.cc
ofstd/tests/tstrutl.cc
**** Changes from 2019.10.07 (eichelberg)
- Clarified documentation of dcmdjpeg --conv-never:
Thanks to Mathieu Malaterre <[email protected]> for pointing
out the ambiguity in the documentation.
Affects: dcmjpeg/apps/dcmdjpeg.cc
dcmjpeg/docs/dcmdjpeg.man
**** Changes from 2019.10.06 (onken)
- Fixed issue with test crashing without dictionary.
Affects: dcmfg/libsrc/fgderimg.cc
dcmfg/tests/t_deriv_image.cc
dcmfg/tests/t_frame_content.cc
**** Changes from 2019.10.01 (riesmeier)
- Fixed "defined but not used function" warning:
Fixed warning on a function that is defined but not used when compiling
without multi-thread support. Reported by gcc with option -Wunused.
Affects: oflog/libsrc/threads.cc
- Updated latest tested CMake version:
Updated information on latest CMake version that has been tested to "3.15.3".
Affects: CMake/dcmtkPrepare.cmake
**** Changes from 2019.10.01 (arizpegomez)
- Minor fixes to remove Doxygen warnings:
Removed discrepancies between doxygen parameter names and function names in
dcencdoc.
Affects: dcmdata/include/dcmtk/dcmdata/dcencdoc.h
**** Changes from 2019.09.30 (riesmeier)
- Added comment on missing VRs for this test.
Affects: dcmdata/tests/tvrcomp.cc
- Fixed double declaration of local variable:
Fixed double declaration of local variable (reported by gcc -Wshadow).
Affects: dcmqrdb/apps/dcmqrscp.cc
dcmseg/libsrc/segdoc.cc
- Fixed wrong VR for attribute RetrieveURL:
Fixed wrong VR used for attribute RetrieveURL (0040,E010) in a test program.
Instead of "UT" (Unlimited Text) the correct VR is "UR" (Universal Resource
Identifier or Universal Resource Locator). Now, both VRs are tested with a
valid example of a DICOM attribute.
Also removed German umlaut character from a test case (actually not needed
here) in order to avoid UTF-8 encoding of the source code file.
Affects: dcmdata/tests/tvrcomp.cc
- Removed unused local variables from test program:
Removed unused local variables from test program (other other minor changes).
Affects: dcmdata/tests/tvrcomp.cc
- Fixed unused parameter warning in test program:
Fixed unused parameter warning reported by gcc when compiling with option
-Wextra (or -Wunused-parameter). The parameter "vrName" is not needed any
longer.
Affects: dcmdata/tests/tvrcomp.cc
**** Changes from 2019.09.30 (eichelberg)
- Fixed DcmTLSOptions::getTransportLayer() signature:
DcmTLSOptions::getTransportLayer() now returns a pointer to
DcmTransportLayer and not to DcmTLSTransportLayer anymore.
Needed when compiling without OpenSSL support, because
in that case class DcmTLSTransportLayer is not defined.
Affects: dcmtls/include/dcmtk/dcmtls/tlsopt.h
dcmtls/libsrc/tlsopt.cc
**** Changes from 2019.09.30 (schlamelcher)
- Made building/installing of manpages configurable:
Building and installing of DCMTK's manpages is now an configurable option
(CMake) instead of being forcibly disabled on Windows. The defaults of this
option reflect the old behavior (OFF on Windows and ON everywhere else), but
Windows users are now free to enable it if they want it for whatever reason.
Affects: CMake/dcmtkPrepare.cmake
doxygen/CMakeLists.txt
**** Changes from 2019.09.27 (onken)
- Copy frame data when adding fractional frames:
Pixel data for fractional segmentations has not been copied, other than for
binary segmentations and other than documented.
Affects: dcmseg/libsrc/segdoc.cc
**** Changes from 2019.09.26 (riesmeier)
- Use non-zero exit code in case of error (findscu):
Made sure that a non-zero exit code is returned in case an error occurred
during association negotiation (i.e. during call of the performQuery()
method). Now using exit code 2 (for performQuery) and 3 (for dropNetwork)
in addition to 1 (all other errors). Future commits should make the use of
exit codes consistent throughout the DCMTK (also see DCMTK Feature #219).
This closes DCMTK Bug #899.
Affects: dcmnet/apps/findscu.cc
**** Changes from 2019.09.26 (onken)
- Correct error message if ass. negotiation fails:
If association negotiation failed, getscu always printed a message that
no acceptable presentation context could be found, even if the reason
was a different one (e.g. Called AE Title not recognized). This problem
has now been fixed by providing a better error message.
Affects: dcmnet/apps/getscu.cc
**** Changes from 2019.09.26 (eichelberg)
- Fixed memory leak in DiPNGPlugin::write():
Thanks to DCMTK forum user AlexanderLysenko for the bug report and fix.
Affects: dcmimage/libsrc/dipipng.cc
**** Changes from 2019.09.25 (riesmeier)
- Fixed issue with loading external entities (XML):
Fixed possible security issue with loading external entities from an XML
file. Starting with libxml2 version 2.9.2, the parser loaded and substituted
external entities (read from file) in an XML document. By doing so, unwanted
data could be leaked (such as the contents of the file "/etc/passwd") when
parsing an appropriately prepared XML file. This type of security issue is
known as XML External Entity (XXE) injection.
The issue was not present in libxml2 version 2.9.1 and since the DCMTK does
not explicitly pass the parser flag XML_PARSE_NOENT to the xmlReadFile()
function, which is actually meant for this purpose, this should also be
true for older versions of the libxml2 library (but has not been tested).
Thanks to Maria Samoylova <[email protected]> for the report, the
comprehensive analysis and for proprosing a (temporary) solution.
Affects: dcmdata/apps/xml2dcm.cc
dcmsr/libsrc/dsrxmld.cc
**** Changes from 2019.09.16 (eichelberg)
- JPEG-LS encoder now sets PlanarConfiguration to 0:
The JPEG-LS encoder now sets PlanarConfiguration to 0 for color images
as required by DICOM CP 1843.
This closes DCMTK issue #882.
Affects: dcmjpls/libsrc/djcodece.cc
**** Changes from 2019.09.11 (riesmeier)
- Get rid of unwanted HAVE_ITERATOR define:
With a recent commit, the define HAVE_ITERATOR was introduced for the
Autoconf generated "osconfig.h" file, i.e. in addition to the define
HAVE_ITERATOR_HEADER. This has been fixed now.
Affects: config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
- Made "Define if..." comments more consistent:
Always start "Define if..." comments with a capital letter and end with a
period (end of the sentence).
Affects: config/aclocal.m4
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
**** Changes from 2019.09.10 (schlamelcher)
- Added missing member typedefs to OFIterator.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
config/aclocal.m4
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
ofstd/include/dcmtk/ofstd/oflist.h
**** Changes from 2019.09.09 (eichelberg)
- Added new macro OFopenmode_in_nocreate:
Defined a new macro OFopenmode_in_nocreate, which either expands to
ios::in or to ios::in|ios::nocreate, if the historic nocreate flag is
supported on the platform. All conditional code checking for
ios::nocreate has been replaced to use the new macro, which reduces code
duplication.
Affects: dcmdata/apps/dcm2xml.cc
dcmimgle/apps/dcod2lum.cc
dcmimgle/apps/dconvlum.cc
dcmimgle/libsrc/didispfn.cc
dcmpstat/apps/dcmmklut.cc
dcmpstat/apps/dcmpsprt.cc
dcmsr/libsrc/dsrdoc.cc
ofstd/include/dcmtk/ofstd/ofstream.h
ofstd/libsrc/ofcmdln.cc
**** Changes from 2019.09.05 (eichelberg)
- Removed <sys/errno.h> include statements:
Removed include statements for <sys/errno.h>, which are obsolete
since we have <cerrno> and cause warnings e.g. on Alpine Linux.
Affects: dcmnet/libsrc/dul.cc
ofstd/libsrc/ofchrenc.cc
**** Changes from 2019.09.04 (riesmeier)
- Fixed another issue with wrong VR for sequences:
Fixed another issue that caused a crash in xml2dcm when parsing a "sequence"
element with wrong VR. Made sure that instances of the DcmElement class are
only typecasted if they are of the correct type.
Thanks again to Sergei Gordey <[email protected]> for the report and
to Maria Nedyak who actually did the analysis and created the samples files.
Affects: dcmdata/apps/xml2dcm.cc
- Fixed crash when "tag" attribute is missing:
Fixed crash (e.g. segmentation fault on Linux systems) in xml2dcm when
parsing an XML file where the "tag" attribute is missing for an element.
Also enhanced log output in case the "tag" or "vr" attribute is missing.
Thanks to Sergei Gordey <[email protected]> for the report and the
samples files (created by a fuzzing tool).
Affects: dcmdata/apps/xml2dcm.cc
**** Changes from 2019.09.04 (eichelberg)
- Use null pointer as sentinel for execl calls:
Since commit ac56966a4 caused warnings on a number of platforms, the
execl calls now use 0 casted to pointer to avoid "missing sentinel"
warnings on gcc 8.3.
Affects: dcmnet/apps/storescp.cc
dcmpstat/libsrc/dviface.cc
**** Changes from 2019.08.26 (goldhammer)
- Workaround for libxml on the IBM XL C/C++ compiler:
The libxml library might also employ the ICU library depending on its
configuration. As a result, the usual problems can be perceived on the
IBM XL C/C++ compiler that were fixed for DCMTK itself in a previous
commit.
This commit applies the same workaround wherever libxml is included.
Affects: dcmdata/apps/xml2dcm.cc
dcmsr/apps/xml2dsr.cc
dcmsr/include/dcmtk/dcmsr/dsrxmlc.h
**** Changes from 2019.08.23 (eichelberg)
- Use OFnullptr as sentinel parameter for execl calls:
Use OFnullptr instead of NULL as final sentinel parameter in all excel
calls to avoid gcc 8.3 warnings on platforms where NULL is not defined
as a pointer.
Affects: dcmnet/apps/storescp.cc
dcmpstat/libsrc/dviface.cc
**** Changes from 2019.08.22 (riesmeier)
- Fixed various HTML issues in API documentation:
Also removed trailing spaces.
Affects: oflog/include/dcmtk/oflog/layout.h
**** Changes from 2019.08.22 (eichelberg)
- Fixed compilation of arith.cc on Cygwin:
Fixed compilation of arith.cc (which is part of the CMake-based configure
process) when compiling on Cygwin. Unfortunately, Cygwin has the header file
<ieeefp.h> but fails to implement fpgetmask/fpsetmask in its libraries.
Without these functions (and their alternatives, which are also missing),
we cannot test if the system has signaling NaN floating point numbers,
so DCMTK_DOUBLE_HAS_SIGNALING_NAN and OFnumeric_limits<T>::has_signaling_NaN
will default to false on Cygwin.
Affects: config/tests/arith.cc
**** Changes from 2019.08.19 (goldhammer)
- Workaround for ICU on the IBM XL C/C++ compiler:
In some cases the ICU library tries to use the char16_t type even though
the compiler does not understand it. This workaround makes sure, that in
such cases the ICU falls back to uint16_t. Additionally there was a problem
with the definition of U_NOEXCEPT from the internal API of the ICU. This
should also be resolved.
Affects: CMake/GenerateDCMTKConfigure.cmake
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
ofstd/libsrc/ofchrenc.cc
**** Changes from 2019.08.16 (riesmeier)
- Added support for detecting a URL in code value:
Enhanced check in DSRCodedEntryValue::determineCodeValueType() to also
detect commonly used variants of a URL.
Affects: dcmsr/include/dcmtk/dcmsr/dsrcodvl.h
dcmsr/libsrc/dsrcodvl.cc
dcmsr/tests/tsrcodvl.cc
**** Changes from 2019.08.16 (eichelberg)
- Use DICOM_WARNING_STATUS to check for DIMSE warnings:
Now consistently using the macro DICOM_WARNING_STATUS() to check
whether or not a DIMSE status value is a warning. The macro also
takes into account special cases where a warning status is not
in the 0xB000-0xBFFF range.
This closes DCMTK issue #894.
Affects: dcmpstat/libsrc/dvpssp.cc
dcmqrdb/libsrc/dcmqrcbg.cc
dcmqrdb/libsrc/dcmqrcbm.cc
**** Changes from 2019.08.14 (eichelberg)
- Added better logger output to RLE decoder.
Affects: dcmdata/libsrc/dcrleccd.cc
**** Changes from 2019.08.13 (riesmeier)
- Added "const" specifier to writeSequenceItem():
The "const" specifier was apparently missing since the method does not
modify any member variables.
Affects: dcmsr/include/dcmtk/dcmsr/dsrcodvl.h
dcmsr/libsrc/dsrcodvl.cc
**** Changes from 2019.08.12 (riesmeier)
- Added support for new Storage SOP Classes:
Added definition of two new Storage SOP Class UIDs from Supplement 175.
This also includes support for the various networking tools and for
generating a DICOMDIR referencing objects of the underlying IODs.
Affects: dcmdata/include/dcmtk/dcmdata/dcuid.h
dcmdata/libsrc/dcddirif.cc
dcmdata/libsrc/dcuid.cc
dcmnet/docs/movescu.man
dcmnet/docs/storescp.man
dcmnet/etc/storescp.cfg
dcmnet/etc/storescu.cfg
dcmqrdb/docs/dcmqrscp.man
dcmqrdb/etc/dcmqrprf.cfg
- Added new well-known Frame of Reference UID:
Added well-known Frame of Reference UID from Supplement 175.
Affects: dcmdata/include/dcmtk/dcmdata/dcuid.h
dcmdata/libsrc/dcuid.cc
**** Changes from 2019.08.12 (eichelberg)
- Cleanup of dcmtk/oflog/oflog.h dependencies:
The widely used header file dcmtk/oflog/oflog.h included several other
headers that were not really needed, thus causing unneccessary dependencies
and increased compile time. Reduced dependencies in oflog.h and added
explicit include statements where required.
Affects: dcmdata/apps/cda2dcm.cc
dcmdata/apps/mdfconen.cc
dcmdata/apps/mdfconen.h
dcmdata/apps/mdfdsman.h
dcmdata/apps/pdf2dcm.cc
dcmdata/apps/stl2dcm.cc
dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcdict.cc
dcmdata/libsrc/dcencdoc.cc
dcmdata/libsrc/dcvrda.cc
dcmdata/libsrc/dcvrobow.cc
dcmdata/libsrc/dcvrod.cc
dcmdata/libsrc/dcvrof.cc
dcmdata/libsrc/dcvrol.cc
dcmdata/libsrc/dcvrov.cc
dcmdata/libsrc/dcvrpobw.cc
dcmimage/include/dcmtk/dcmimage/dcmicmph.h
dcmiod/include/dcmtk/dcmiod/iodtypes.h
dcmnet/libsrc/dulpres.cc
dcmsr/tests/mkreport.cc
dcmtls/libsrc/tlsopt.cc
oflog/include/dcmtk/oflog/oflog.h
oflog/libsrc/oflog.cc
**** Changes from 2019.08.12 (goldhammer)
- Fixed a minor typo in a comment.
Affects: ofstd/include/dcmtk/ofstd/ofxml.h
**** Changes from 2019.08.10 (eichelberg)
- Added bitstream padding command line options:
Added command line options --padding-standard and --padding-zero to dcmcjpls
that define how odd-length JPEG-LS bitstreams are padded: by writing an
extended end of image marker (FF FF D9) or by adding a zero byte (FF D9 00).
Default behaviour is to write an extended marker, as required by the standard.
Option --padding-zero can be used to create compressed images that can be
decoded by implementations (such as the HP LOCO reference implementation) that
do not support extended marker segments.
Affects: config/docs/macros.txt
dcmjpls/apps/dcmcjpls.cc
dcmjpls/docs/dcmcjpls.man
dcmjpls/include/dcmtk/dcmjpls/djcodece.h
dcmjpls/include/dcmtk/dcmjpls/djcparam.h
dcmjpls/include/dcmtk/dcmjpls/djencode.h
dcmjpls/libsrc/djcodece.cc
dcmjpls/libsrc/djcparam.cc
dcmjpls/libsrc/djencode.cc
**** Changes from 2019.08.09 (riesmeier)
- Added wlmsetup.txt to module page and install it:
Added recently introduced documentation file "wlmsetup.txt" to the Doxygen
module page of "dcmwlm" and install this file during "make install".
Added: dcmwlm/docs/CMakeLists.txt
Affects: dcmwlm/CMakeLists.txt
dcmwlm/docs/Makefile.in
dcmwlm/docs/dcmwlm.dox
**** Changes from 2019.08.08 (riesmeier)
- Fixed declaration order of member variables:
Fixed order of declaration of member variables to avoid warning messages
reported by gcc with -Wreorder (which is the default on some systems).
Also fixed typo in API documentation and rewrapped lines.
Affects: dcmjpls/include/dcmtk/dcmjpls/djcparam.h
- Updated latest tested CMake version:
Updated information on latest CMake version that has been tested to "3.15.2".
Also replaced outdated comment on "minimum CMake version required".
Affects: CMake/dcmtkPrepare.cmake
**** Changes from 2019.08.07 (riesmeier)
- Updated keyword of attribute (0018,100B):
Changed keyword of attribute (0018,100B) from "ManufacturersDeviceClassUID"
to "ManufacturersDeviceClassUID" in order to comply with the official mapping
of attribute names to keywords ("'s" is removed).
This change was made after receiving feedback from David Clunie, editor of the
DICOM standard, and publlication of the "FT2" version of Supplement 175.
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
- Updated data dictionary for Supplement 175:
Updated data dictionary for recently approved changes to the DICOM standard,
i.e. Final Text of Supplement 175 (Second Generation Radiotherapy - C-Arm RT
Treatment Modalities).
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
- Added missing full stop to end of sentence.
Affects: dcmimgle/include/dcmtk/dcmimgle/dcmimage.h
**** Changes from 2019.08.06 (eichelberg)
- Changed DJLSCodecParameter constructor parameters:
Changed parameter list of one DJLSCodecParameter constructor to make
sure that default construction can be resolved without ambiguity.
This fixes an error on Visual Studio 2012.
Affects: dcmjpls/include/dcmtk/dcmjpls/djcparam.h
dcmjpls/libsrc/djcparam.cc
dcmjpls/libsrc/djencode.cc
**** Changes from 2019.08.05 (eichelberg)
- CMake option DCMTK_COMPILE_WIN32_MULTITHREADED_DLL:
Added CMake option DCMTK_COMPILE_WIN32_MULTITHREADED_DLL that controls whether
DCMTK gets compiled using the Multithreaded static (/MT) or DLL (/MD) runtime
library when using MSVC. Note that enabling BUILD_SHARED_LIBS also automatically
enables DCMTK_COMPILE_WIN32_MULTITHREADED_DLL.
This closes DCMTK issue #842.
Affects: CMake/dcmtkPrepare.cmake
**** Changes from 2019.08.03 (eichelberg)
- Fixed bug in the near-lossless JPEG-LS encoder:
Fixed a bug in the JPEG-LS cooked encoder affecting images with BitsStored
values other than 8 or 16 when compressed in near-lossless mode. The bug caused
the number of bits per pixel fed to the encoder to be always set to 8 or 16,
which could cause pixel values to overflow the permitted value range.
Affects: dcmjpls/libsrc/djcodece.cc
- Avoid passing default JPEG-LS parameters to encoder:
Avoid passing JPEG-LS parameters T1, T2, T3 and RESET to the encoder
if all values are default values. This avoids unnecessary LSE segments
from being written to the JPEG-LS bitstream, which was a side effect
introduced with commit 8bacf8741.
Affects: dcmjpls/libsrc/djcodece.cc
**** Changes from 2019.07.31 (eichelberg)
- Fixed custom RESET value issue in JPEG-LS encoder:
The JPEG-LS standard allows encoding images with a custom RESET value in
the JPEG-LS preset coding parameters. Due to a bug in CharLS, the use of
custom RESET values caused invalid JPEG-LS bitstreams to be created when
compressing images with more than 8 bits/sample. This bug was registered
as issue #35 in the bug tracker of the CharLS project. Fixed the issue by
back-porting the related fix (commit bd8cb5c) from CharLS 1.1.
Affects: dcmjpls/libcharls/jpegls.cc
**** Changes from 2019.07.30 (eichelberg)
- Added --workaround-incpl option to dcmdjpls:
Added --workaround-incpl option to dcmdjpls that offers the same
functionality as in dcmdjpeg, where this option was already available.
In brief, the option allows incomplete bitstreams to be decoded
to an uncompressed (but probably incomplete) DICOM image.
Affects: dcmjpls/apps/dcmdjpls.cc
dcmjpls/docs/dcmdjpls.man
dcmjpls/include/dcmtk/dcmjpls/djcparam.h
dcmjpls/include/dcmtk/dcmjpls/djdecode.h
dcmjpls/libsrc/djcodecd.cc
dcmjpls/libsrc/djcparam.cc
dcmjpls/libsrc/djdecode.cc
- Added text file explaining the Worklist SCP setup:
Since the original text file explaining the setup of wlmscpfs, DCMTK's
Worklist SCP, was removed in 2015 along with the unmaintained "wwwapps"
scripts, added a new text document describing the setup and file format
used by wlmscpfs.
Added: dcmwlm/docs/wlmsetup.txt
- Enable setting of individual JPEG-LS encoding parameters:
Previously, modifying the JPEG-LS encoding parameters T1, T2, T3 and RESET
required that all parameters be set manually. Now they can be set individually
and the values of the other parameters are computed automatically if needed.
Support for the JPEG-LS parameter LIMIT, which is not accessible through a
public API in CharLS, was removed.
Affects: dcmjpls/apps/dcmcjpls.cc
dcmjpls/docs/dcmcjpls.man
dcmjpls/include/dcmtk/dcmjpls/djcodece.h
dcmjpls/include/dcmtk/dcmjpls/djcparam.h
dcmjpls/include/dcmtk/dcmjpls/djencode.h
dcmjpls/libsrc/djcodece.cc
dcmjpls/libsrc/djcparam.cc
dcmjpls/libsrc/djencode.cc
**** Changes from 2019.07.29 (eichelberg)
- Minor correction to previous commit.
Affects: dcmjpls/libsrc/djcodecd.cc
**** Changes from 2019.07.28 (eichelberg)
- Fixed bug in JPEG-LS decoder:
Fixed bug in JPEG-LS decoder: PlanarConfiguration was not updated when
decompressing a color image with one of the (non-default) options
--planar-auto, --color-by-pixel or --color-by-plane.
Affects: dcmjpls/libsrc/djcodecd.cc
**** Changes from 2019.07.12 (riesmeier)
- Minor fixes after previous commit:
Fixed source code formatting and some (ancient) typos. Also avoided use of
OFString::c_str() where not needed, rename file if "on the fly compression"
fails, and report successful renaming to the debug logger.
Affects: dcmnet/apps/storescu.cc
dcmnet/docs/storescu.man
**** Changes from 2019.07.12 (onken)
- Option to rename file after processing:
Added option to storescu to rename files after processing them by
appending .bad or .good at the end of the file name.
Thanks to Grischa Zengel <[email protected]> for the original patch.
Affects: dcmnet/apps/storescu.cc
dcmnet/docs/storescu.man
**** Changes from 2019.07.08 (riesmeier)
- Fixed issue with empty OverlayActivationLayer:
Fixed possible issue with empty value for Overlay Activation Layer
(60xx,1001) in a GSPS object, which could result in a crash (OFString
initialized with a NULL pointer). However, when DCMTK was compiled with
USE_NULL_SAFE_OFSTRING defined and without STl support (i.e. in default
configuration), no crash could occur.
Thanks to Daniel Grieger <[email protected]> for the report
and suggested fix.
Affects: dcmpstat/include/dcmtk/dcmpstat/dvpsal.h
dcmpstat/libsrc/dvpsall.cc
**** Changes from 2019.07.05 (riesmeier)
- Added missing prefix "DCMTK_" to CMake variable:
Added missing prefix "DCMTK_" to CMake variable DCMTK_PACKAGE_VERSION_SUFFIX.
Affects: doxygen/CMakeLists.txt
**** Changes from 2019.07.04 (riesmeier)
- Added wide char support to XML parser (Windows):
Added macro that enables the wide char (wchar_t*) support of the XML parser
that is part of the DCMTK (ofstd/ofxml). This support is limited to Windows
systems and still regarded as experimental (see documentation for details).
Instead of defining UNICODE/_UNICODE (which is still not supported by the
DCMTK) the macro WIDE_CHAR_XML_PARSER has been introduced for this purpose.
Affects: config/docs/macros.txt
dcmdata/libsrc/dcencdoc.cc
ofstd/include/dcmtk/ofstd/ofxml.h
**** Changes from 2019.07.03 (riesmeier)
- Added new print flag PF_printEmptyCodes:
Added new print flag PF_printEmptyCodes, which prints the text "empty code"
for empty codes instead of "invalid code". This new flag is e.g. used for
the output stream operator of the DSRCodedEntryValue class.
Background: Empty coded entry values are usually treated as invalid but it
might be useful to distinguish them from "really" invalid codes when being
printed (e.g. output to a stream).
Affects: dcmsr/include/dcmtk/dcmsr/dsrtypes.h
dcmsr/libsrc/dsrcodvl.cc
dcmsr/libsrc/dsrtypes.cc
**** Changes from 2019.06.27 (riesmeier)
- Added createXXXArray() method for OD, OF, OL, OV:
Added createXXXArray() method for "new" value representations OD, OF, OL and
OV. Also introduced a new error code (condition constant) that is used when
the element length would be larger than what the 32-bit length field permits.
Affects: dcmdata/include/dcmtk/dcmdata/dcerror.h
dcmdata/include/dcmtk/dcmdata/dcvrod.h
dcmdata/include/dcmtk/dcmdata/dcvrof.h
dcmdata/include/dcmtk/dcmdata/dcvrol.h
dcmdata/include/dcmtk/dcmdata/dcvrov.h
dcmdata/libsrc/dcerror.cc
dcmdata/libsrc/dcvrod.cc
dcmdata/libsrc/dcvrof.cc
dcmdata/libsrc/dcvrol.cc
dcmdata/libsrc/dcvrov.cc
- Fixed minor issues in API documentation.
Affects: dcmdata/include/dcmtk/dcmdata/dcbytstr.h
dcmdata/include/dcmtk/dcmdata/dcvrat.h
dcmdata/include/dcmtk/dcmdata/dcvrfd.h
**** Changes from 2019.06.20 (eichelberg)
- Fixed CMake OpenSSL version check:
The CMake OpenSSL version check now also correctly works when OpenSSL
is installed in a non-standard directory pointed to by OPENSSL_ROOT_DIR.
Affects: CMake/3rdparty.cmake
**** Changes from 2019.06.19 (riesmeier)
- Updated code definitions for DICOM 2019c:
Updated automatically generated code definitions for coding scheme "NCIt".
For coding scheme "DCM" and "UMLS", there were no changes.
Affects: dcmsr/include/dcmtk/dcmsr/codes/ncit.h
**** Changes from 2019.06.19 (eichelberg)
- Fixed compilation of arith.cc on CygWin.
Affects: config/tests/arith.cc
**** Changes from 2019.06.15 (onken)
- Notify about association termination:
Notify about the termination of an association using the related method
in the DcmSCP class. The notify method has been called in DcmSCP but not
on the threaded version of the class (DcmThreadSCP) which has been fixed
with this commit.
Thanks to Brian Wise <[email protected]> for the report.
Affects: dcmnet/libsrc/scpthrd.cc
**** Changes from 2019.06.14 (riesmeier)
- Fixed issue with loop check (by-reference):
Fixed issue with loop check for by-reference relationships.
Affects: dcmsr/include/dcmtk/dcmsr/dsrdocst.h
dcmsr/libsrc/dsrdocst.cc
dcmsr/tests/tests.cc
dcmsr/tests/tsrdoctr.cc
**** Changes from 2019.06.13 (riesmeier)
- Minor fixes to API documentation and formatting.
Affects: dcmdata/include/dcmtk/dcmdata/dcbytstr.h
dcmdata/include/dcmtk/dcmdata/dcdicdir.h
dcmdata/include/dcmtk/dcmdata/dcdirrec.h
dcmdata/include/dcmtk/dcmdata/dcfilefo.h
dcmdata/include/dcmtk/dcmdata/dcitem.h
dcmdata/include/dcmtk/dcmdata/dcmetinf.h
dcmdata/include/dcmtk/dcmdata/dcobject.h
dcmdata/include/dcmtk/dcmdata/dcpixel.h
dcmdata/include/dcmtk/dcmdata/dcpixseq.h
dcmdata/include/dcmtk/dcmdata/dcpxitem.h
dcmdata/include/dcmtk/dcmdata/dcsequen.h
dcmdata/include/dcmtk/dcmdata/dcvrat.h
dcmdata/include/dcmtk/dcmdata/dcvrfd.h
dcmdata/include/dcmtk/dcmdata/dcvrfl.h
dcmdata/include/dcmtk/dcmdata/dcvrobow.h
dcmdata/include/dcmtk/dcmdata/dcvrod.h
dcmdata/include/dcmtk/dcmdata/dcvrof.h
dcmdata/include/dcmtk/dcmdata/dcvrol.h
dcmdata/include/dcmtk/dcmdata/dcvrpobw.h
dcmdata/include/dcmtk/dcmdata/dcvrsl.h
dcmdata/include/dcmtk/dcmdata/dcvrss.h
dcmdata/include/dcmtk/dcmdata/dcvrui.h
dcmdata/include/dcmtk/dcmdata/dcvrul.h
dcmdata/include/dcmtk/dcmdata/dcvrulup.h
dcmdata/include/dcmtk/dcmdata/dcvrur.h
dcmdata/include/dcmtk/dcmdata/dcvrus.h
dcmdata/include/dcmtk/dcmdata/dcvrut.h
dcmdata/libsrc/dcdatset.cc
dcmdata/libsrc/dcdicdir.cc
dcmdata/libsrc/dcdirrec.cc
dcmdata/libsrc/dcmetinf.cc
dcmdata/libsrc/dcobject.cc
dcmdata/libsrc/dcpixel.cc
dcmdata/libsrc/dcpxitem.cc
dcmdata/libsrc/dcsequen.cc
dcmdata/libsrc/dcvrfd.cc
dcmdata/libsrc/dcvrfl.cc
dcmdata/libsrc/dcvrobow.cc
dcmdata/libsrc/dcvrsl.cc
dcmdata/libsrc/dcvrss.cc
dcmdata/libsrc/dcvrul.cc
dcmdata/libsrc/dcvrus.cc
- Added full support for new 64-bit VRs:
Added full support for the three new 64-bit integer VRs introduced with
CP-1819: Other 64-bit Very Long (OV), Signed 64-bit Very Long (SV) and
Unsigned 64-bit Very Long (UV).
Currently, the DICOM standard only uses "OV" for two DICOM attributes
introduced with CP-1818 (Extended Offset Table).
This closes DCMTK Conformance #867.
Added: dcmdata/include/dcmtk/dcmdata/dcvrov.h
dcmdata/include/dcmtk/dcmdata/dcvrsv.h
dcmdata/include/dcmtk/dcmdata/dcvruv.h
dcmdata/libsrc/dcvrov.cc
dcmdata/libsrc/dcvrsv.cc
dcmdata/libsrc/dcvruv.cc
dcmdata/tests/tvrov.cc
dcmdata/tests/tvrsv.cc
dcmdata/tests/tvruv.cc
Affects: dcmdata/apps/Makefile.dep
dcmdata/docs/dcm2xml.man
dcmdata/docs/xml2dcm.man
dcmdata/include/dcmtk/dcmdata/dcelem.h
dcmdata/include/dcmtk/dcmdata/dcitem.h
dcmdata/include/dcmtk/dcmdata/dctk.h
dcmdata/libi2d/Makefile.dep
dcmdata/libsrc/CMakeLists.txt
dcmdata/libsrc/Makefile.dep
dcmdata/libsrc/Makefile.in
dcmdata/libsrc/dcelem.cc
dcmdata/libsrc/dcitem.cc
dcmdata/tests/CMakeLists.txt
dcmdata/tests/Makefile.dep
dcmdata/tests/Makefile.in
dcmdata/tests/telemlen.cc
dcmdata/tests/tests.cc
dcmfg/libsrc/Makefile.dep
dcmfg/tests/Makefile.dep
dcmimage/apps/Makefile.dep
dcmimage/libsrc/Makefile.dep
dcmimgle/apps/Makefile.dep
dcmimgle/libsrc/Makefile.dep
dcmiod/libsrc/Makefile.dep
dcmiod/tests/Makefile.dep
dcmjpeg/apps/Makefile.dep
dcmjpeg/libsrc/Makefile.dep
dcmjpls/apps/Makefile.dep
dcmjpls/libcharls/Makefile.dep
dcmnet/apps/Makefile.dep
dcmnet/libsrc/Makefile.dep
dcmnet/tests/Makefile.dep
dcmpmap/libsrc/Makefile.dep
dcmpstat/apps/Makefile.dep
dcmpstat/libsrc/Makefile.dep
dcmpstat/tests/Makefile.dep
dcmqrdb/libsrc/Makefile.dep
dcmrt/apps/Makefile.dep
dcmrt/libsrc/Makefile.dep
dcmrt/tests/Makefile.dep
dcmseg/libsrc/Makefile.dep
dcmseg/tests/Makefile.dep
dcmsign/apps/Makefile.dep
dcmsr/apps/Makefile.dep
dcmsr/libcmr/Makefile.dep
dcmsr/tests/Makefile.dep
dcmtls/libsrc/Makefile.dep
dcmtract/libsrc/Makefile.dep
dcmwlm/libsrc/Makefile.dep
oflog/libsrc/Makefile.dep
ofstd/libsrc/Makefile.dep
**** Changes from 2019.06.12 (eichelberg)
- Added compiler flags to suppress some xlC warnings.
Affects: CMake/dcmtkPrepare.cmake
- Fixed IBM xlC warnings in libxml headers.
Affects: dcmdata/apps/xml2dcm.cc
dcmsr/apps/xml2dsr.cc
dcmsr/include/dcmtk/dcmsr/dsrxmlc.h
**** Changes from 2019.05.22 (onken)
- Enhanced img2dcm documentation (no multi-frame):
Added hint to documentation that img2dcm only creates single-frame
objects so far, even if some of the available output IODs potentially
allow multi-frame.
Affects: dcmdata/docs/img2dcm.man
**** Changes from 2019.05.14 (eichelberg)
- Do not use the ios::nocreate flag in C++11 mode.
Affects: dcmdata/apps/dcm2xml.cc
dcmimgle/apps/dcod2lum.cc
dcmimgle/apps/dconvlum.cc
dcmimgle/libsrc/didispfn.cc
dcmpstat/apps/dcmmklut.cc
dcmpstat/apps/dcmpsprt.cc
dcmsr/libsrc/dsrdoc.cc
ofstd/libsrc/ofcmdln.cc
**** Changes from 2019.05.10 (eichelberg)
- Fixed tabs and space characters.
Affects: ofstd/include/dcmtk/ofstd/ofbmanip.h
- Fixed previous commit:
Fixed the previous commit which in certain constellations could
lead to a duplicate move of a memory buffer.
Affects: ofstd/include/dcmtk/ofstd/ofbmanip.h
**** Changes from 2019.05.09 (riesmeier)
- Only use PTRDIFF_MAX if defined:
There seem to be systems where the macro constant PTRDIFF_MAX is not defined
even though it should be (is part of C99, defined in header file "stdint.h").
Affects: ofstd/include/dcmtk/ofstd/ofbmanip.h
**** Changes from 2019.05.09 (eichelberg)
- Define Uint32 as uint32_t if possible:
Now covering additional cases: define Uint32 as uint32_t if possible,