forked from DCMTK/dcmtk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES.367
3597 lines (3065 loc) · 137 KB
/
CHANGES.367
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.7 (Public Minor Release - 2022-04-22)
**** Changes from 2022.04.22 (onken)
- Created CHANGES.367 for DCMTK release 3.6.7:
CHANGES.367 contains the Git commit history since DCMTK release 3.6.6.
Added: docs/CHANGES.367
- Updated man pages for DCMTK release 3.6.7.
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.7.
Affects: CMake/dcmtkPrepare.cmake
VERSION
- Updated copyright date.
Affects: COPYRIGHT
dcmdata/docs/cda2dcm.man
dcmdata/docs/dcm2pdf.man
dcmdata/docs/dcm2xml.man
dcmdata/docs/dcmconv.man
dcmdata/docs/dcmcrle.man
dcmdata/docs/dcmdrle.man
dcmdata/docs/dcmdump.man
dcmdata/docs/dcmftest.man
dcmdata/docs/dcmgpdir.man
dcmdata/docs/dcmodify.man
dcmdata/docs/dump2dcm.man
dcmdata/docs/pdf2dcm.man
dcmdata/docs/stl2dcm.man
dcmdata/docs/xml2dcm.man
dcmimage/docs/dcm2pnm.man
dcmimage/docs/dcmicmp.man
dcmimage/docs/dcmquant.man
dcmimage/docs/dcmscale.man
dcmimgle/docs/dcmdspfn.man
dcmimgle/docs/dcod2lum.man
dcmimgle/docs/dconvlum.man
dcmjpeg/docs/dcmcjpeg.man
dcmjpeg/docs/dcmdjpeg.man
dcmjpeg/docs/dcmj2pnm.man
dcmjpeg/docs/dcmmkdir.man
dcmjpls/docs/dcmcjpls.man
dcmjpls/docs/dcmdjpls.man
dcmjpls/docs/dcml2pnm.man
dcmnet/docs/dcmrecv.man
dcmnet/docs/dcmsend.man
dcmnet/docs/echoscu.man
dcmnet/docs/findscu.man
dcmnet/docs/getscu.man
dcmnet/docs/movescu.man
dcmnet/docs/storescp.man
dcmnet/docs/storescu.man
dcmnet/docs/termscu.man
dcmpstat/docs/dcmmkcrv.man
dcmpstat/docs/dcmmklut.man
dcmpstat/docs/dcmp2pgm.man
dcmpstat/docs/dcmprscp.man
dcmpstat/docs/dcmprscu.man
dcmpstat/docs/dcmpschk.man
dcmpstat/docs/dcmpsmk.man
dcmpstat/docs/dcmpsprt.man
dcmpstat/docs/dcmpsrcv.man
dcmpstat/docs/dcmpssnd.man
dcmqrdb/docs/dcmqridx.man
dcmqrdb/docs/dcmqrscp.man
dcmqrdb/docs/dcmqrti.man
dcmrt/docs/drtdump.man
dcmsign/docs/dcmsign.man
dcmsr/docs/dsr2html.man
dcmsr/docs/dsr2xml.man
dcmsr/docs/dsrdump.man
dcmsr/docs/xml2dsr.man
dcmwlm/docs/wlmscpfs.man
- Fix adaptations missing in RC2.
Affects: ANNOUNCE
CMake/dcmtkPrepare.cmake
INSTALL
config/configure
config/configure.in
**** Changes from 2022.04.14 (onken)
- Fixed test by removing retired attribute:
Fixed test that compares stored with actual dump that failed because an
attribute name changed due to retirment. The attribute has been removed
from the test (and thus the dump).
Reformatted dump string in test for better readability.
Affects: dcmect/tests/t_huge_concat.cc
**** Changes from 2022.04.13 (onken)
- Remove debugging output introduced in last commit.
Affects: dcmseg/tests/tbigdim.cc
- Speed up dcmseg_bigdim and only run with std::map:
The dcmseg_bigdim test exercises creation of a segmentation with
1.000.000 frames and 65535 segments. Therefore it takes a lot of time
to run.
The current functional group implementation uses the OFMap class that
internally is still based on an OFList, making it extermely slow for
random access. Therefore, this test is only run if the STL map
implementation is being used (HAVE_STL_MAP is being defined) which
speeds up the test tremendously.
Also some segmentation checking has been disabled via API to further
speed up test execution.
Affects: dcmseg/tests/tbigdim.cc
**** Changes from 2022.04.12 (riesmeier)
- Updated Context Group classes for DICOM 2022b:
Updated automatically generated Context Group classes for the 2022b edition
of the DICOM standard. All supported classes were updated, even though there
were no changes to most of them.
Affects: dcmsr/include/dcmtk/dcmsr/cmr/cid100.h
dcmsr/include/dcmtk/dcmsr/cmr/cid10013.h
dcmsr/include/dcmtk/dcmsr/cmr/cid10033.h
dcmsr/include/dcmtk/dcmsr/cmr/cid11.h
dcmsr/include/dcmtk/dcmsr/cmr/cid244.h
dcmsr/include/dcmtk/dcmsr/cmr/cid247.h
dcmsr/include/dcmtk/dcmsr/cmr/cid29.h
dcmsr/include/dcmtk/dcmsr/cmr/cid4020.h
dcmsr/include/dcmtk/dcmsr/cmr/cid4021.h
dcmsr/include/dcmtk/dcmsr/cmr/cid4031.h
dcmsr/include/dcmtk/dcmsr/cmr/cid42.h
dcmsr/include/dcmtk/dcmsr/cmr/cid6147.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7021.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7181.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7445.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7452.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7453.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7464.h
dcmsr/include/dcmtk/dcmsr/cmr/cid7469.h
dcmsr/libcmr/cid100.cc
dcmsr/libcmr/cid10013.cc
dcmsr/libcmr/cid10033.cc
dcmsr/libcmr/cid11.cc
dcmsr/libcmr/cid244.cc
dcmsr/libcmr/cid247.cc
dcmsr/libcmr/cid29.cc
dcmsr/libcmr/cid4020.cc
dcmsr/libcmr/cid4021.cc
dcmsr/libcmr/cid4031.cc
dcmsr/libcmr/cid42.cc
dcmsr/libcmr/cid6147.cc
dcmsr/libcmr/cid7021.cc
dcmsr/libcmr/cid7181.cc
dcmsr/libcmr/cid7445.cc
dcmsr/libcmr/cid7452.cc
dcmsr/libcmr/cid7453.cc
dcmsr/libcmr/cid7464.cc
dcmsr/libcmr/cid7469.cc
- Updated code definitions for DICOM 2022b:
Updated automatically generated code definitions for coding scheme "DCM".
For the coding schemes "NCIt" and "UMLS", there were no changes.
Affects: dcmsr/include/dcmtk/dcmsr/codes/dcm.h
dcmsr/include/dcmtk/dcmsr/codes/ncit.h
dcmsr/include/dcmtk/dcmsr/codes/umls.h
- Updated data dictionary for DICOM 2022b:
Updated data dictionary for the latest edition of the DICOM standard, which
has been released only recently.
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
**** Changes from 2022.04.06 (riesmeier)
- Updated copyright date.
Affects: COPYRIGHT
- Replaced http:// by https:// in documentation.
Affects: README
**** Changes from 2022.03.30 (riesmeier)
- Fixed typo in comment.
Affects: dcmdata/libsrc/dcfilefo.cc
**** Changes from 2022.03.30 (eichelberg)
- Fixed possible NULL pointer dereference:
Fixed a possible NULL pointer dereference that could occur when reading an
invalid DICOM file from stdin. Loading a file from the file system
and receiving data over a network connection were not affected by this bug.
Thanks to Sharon Brizinov and Noam Moshe from Claroty Research for the
bug report and sample file.
Affects: dcmdata/libsrc/dcfilefo.cc
dcmdata/libsrc/dcitem.cc
**** Changes from 2022.03.25 (riesmeier)
- Fixed wrong VR in JSON example (see CP-2139).
Affects: dcmdata/docs/dcm2json.man
**** Changes from 2022.03.24 (riesmeier)
- Made log output in this module more consistent.
Affects: dcmjpls/apps/dcmcjpls.cc
dcmjpls/apps/dcmdjpls.cc
dcmjpls/libsrc/djcodecd.cc
dcmjpls/libsrc/djcodece.cc
- Fixed incorrect warning in JPEG-LS decoder:
Fixed incorrect warning on value of Planar Configuration (0028,0006)
when decompressing a JPEG-LS compressed DICOM image. With CP-1843 it
was clarified that Planar Configuration should always be "0".
Thanks to Mathieu Malaterre <[email protected]> for the
original report and suggested fix.
Affects: dcmjpls/libsrc/djcodecd.cc
**** Changes from 2022.03.23 (riesmeier)
- Don't add Derivation Description to Icon Images:
When compressing a DICOM image with an embedded icon image with the JPEG
true lossless encoder, which is dcmcjpeg's default compression option, a
Derivation Description (0008,2111) was added to the Icon Image Sequence
(0088,0200), even though it should only be added to the top-level dataset.
This issue has been fixed now.
Thanks to Mathieu Malaterre <[email protected]> for the
original report.
Affects: dcmjpeg/libsrc/djcodece.cc
**** Changes from 2022.03.22 (riesmeier)
- Minor fixes to documentation:
Minor fixes to the documentation after recent commits.
Affects: config/docs/macros.txt
dcmdata/docs/img2dcm.man
**** Changes from 2022.03.22 (eichelberg)
- Fixed typo.
Affects: dcmjpeg/libijg12/jerror12.h
dcmjpeg/libijg16/jerror16.h
dcmjpeg/libijg8/jerror8.h
**** Changes from 2022.03.18 (riesmeier)
- Fixed documentation of default options:
Fixed documentation of command line options that are enabled by default.
Thanks to GitHub user "malaterre" for the original report and suggested fix.
Affects: dcmdata/apps/img2dcm.cc
dcmdata/docs/img2dcm.man
**** Changes from 2022.03.16 (riesmeier)
- Replaced use of deprecated DIMSE Status Codes:
Now, the DCMTK compiles without the deprecated DIMSE Status Code defines.
User code should do the same since the deprecated defines (see "dimse.h")
will be removed in a future release.
Affects: dcmpstat/libsrc/dvpspll.cc
dcmpstat/libsrc/dvpsprt.cc
dcmpstat/libsrc/dvpsspl.cc
dcmqrdb/libsrc/dcmqrcbm.cc
dcmqrdb/libsrc/dcmqrdbi.cc
- Fixed some outdated DIMSE Status strings:
Updated the mapping of some DIMSE Status Codes to strings in the
DU_xxxStatusString() methods to reflect the changes introduced with
commit 5422b14947. This also avoids the use of deprecated defines.
Affects: dcmnet/libsrc/diutil.cc
**** Changes from 2022.03.15 (riesmeier)
- Various minor fixes to "macros.txt":
Fixed various minor issues in the text file, e.g. line breaks after 80
characters and two spaces after the period.
Affects: config/docs/macros.txt
**** Changes from 2022.03.15 (eichelberg)
- Removed overly strict check in the JPEG decoder:
Removed a check for the validity of the Huffman table in the JPEG
decoder that triggers certain valid JPEG images as being invalid.
This closes DCMTK issue #1018.
Thanks to Mathieu Malaterre for the bug report and suggested fix.
Affects: config/docs/macros.txt
dcmjpeg/libijg12/jdhuff.c
dcmjpeg/libijg16/jdhuff.c
dcmjpeg/libijg8/jdhuff.c
**** Changes from 2022.03.15 (riesmeier)
- Fixed "delimiter characters" for VR UC:
Fixed wrong definition of "delimiter characters" for the Value
Representation (VR) "Unlimited Characters" (UC). Now, the backslash
is treated as a delimiter (see DICOM PS3.5).
Also changed handling of getDelimiterChars() in dcmdata's VR classes.
Thanks to Par Lidberg <[email protected]> for the original report
and suggested fix.
Affects: dcmdata/include/dcmtk/dcmdata/dcvrlo.h
dcmdata/include/dcmtk/dcmdata/dcvrpn.h
dcmdata/include/dcmtk/dcmdata/dcvrsh.h
dcmdata/libsrc/dcchrstr.cc
dcmdata/libsrc/dcvr.cc
dcmdata/libsrc/dcvrlo.cc
dcmdata/libsrc/dcvrpn.cc
dcmdata/libsrc/dcvrsh.cc
**** Changes from 2022.03.14 (riesmeier)
- Removed misplaced comment character "//".
Affects: dcmseg/libsrc/segutils.cc
- Specified "non-signficant characters" for VR UC:
The backslash and the space character are now specified as not significant
for the Value Representation "Unlimited Characters" (UC), since this is how
this VR is defined in DICOM PS3.5. With this change, a UC value consisting
of spaces and/or backslashes only is considered an empty value.
Affects: dcmdata/libsrc/dcvruc.cc
- Added check on missing Unique Key (strict mode):
Report a more appropriate error, both to the logger and as a DIMSE Status
Code (A900 instead of C000), if the Unique Key is missing for the higher
level(s) of a C-FIND request.
This check is only performed in "strict mode", i.e. when dcmqrscp is called
with option --check-find (-XF).
Thanks to Abdallah Maouche <[email protected]> for the report and
suggested fix. See also PR #53 at https://github.com/DCMTK/dcmtk/pull/53.
Affects: dcmqrdb/libsrc/dcmqrdbi.cc
**** Changes from 2022.03.14 (onken)
- Fix for bug introduced in 1fd08a:
Fixed bug leading to doubled first frame in Per Frame Functional Group
Sequence. Also fixed related test case.
Affects: dcmfg/libsrc/concatenationloader.cc
dcmfg/tests/t_concatenation_loader.cc
- Removed debug output.
Affects: dcmiod/libsrc/iodutil.cc
- Fixed another issue with binary seg concatenations:
Related to commit 95335b now all bytes shifted to the right are casted
to unsigned before. Also a superfluous byte copying has been removed that
also lead to problems when using binary segmentatios of unusual dimensions.
Also made some minor improvements.
Affects: dcmfg/libsrc/concatenationloader.cc
dcmiod/libsrc/iodutil.cc
dcmseg/libsrc/segdoc.cc
dcmseg/libsrc/segutils.cc
**** Changes from 2022.03.07 (onken)
- Check return value for error.
Affects: dcmdata/apps/mdfdsman.cc
**** Changes from 2022.03.04 (onken)
- Forbid insertion of encapsulated Pixel Data:
dcmodify's options -mf and -if can be used to insert the content of a
file into an element's value. This also works for uncompressed data in
the Pixel Data element.
If a user tried to replace or insert encapsulated pixel data, the new
value was not inserted at all, however, dcmodify reported success.
Now, the insertion/modification of values for encapsulated Pixel Data is
rejected by dcmodify and a related error is reported to the user.
Also, trying to insert value directly from the command line into the
encapsulated Pixel Data element (via -m / -i options) now produces a
better error message.
Thanks to forum user "upnorth173" for the report.
Affects: dcmdata/apps/mdfdsman.cc
dcmdata/apps/mdfdsman.h
- Reformatted source code.
Affects: dcmdata/apps/mdfdsman.cc
**** Changes from 2022.03.04 (goldhammer)
- Improved detection of additional depencencies for statically linking:
Improved detection of additional library depencencies for statically
linking the third-party libraries used in the DCMTK. The problem is caused by
third party libraries having depencencies themselves. For example libxml2
requires zlib among others. This gets even more complicated when on one
operating system for example libtiff is compiled with libdeflate an on
another system it is not. This means on one system there are linker errors
when libdeflate is not included and on another system there are errors when
it is included.
The best solution would possibly be to just compile all third-party libraries
ourself and use these versions for statically linking. In the meantime this
solution can somewhat handle these differences.
Affects: CMake/dcmtkPrepare.cmake
- Added flag DCMTK_USE_OWN_FINDOPENJPEG_MODULE:
The DCMTK has its own FindOpenJPEG.cmake module. Sometimes it can be useful
to use this module instead of the one provided by the operating system. The
default is still to use the one provided by the operating system.
Affects: CMake/3rdparty.cmake
- Fixed a warning in the FindOpenJPEG module:
The problem was OPENJPEG is not OpenJPEG and if you look for _FOUND
it could have caused issues.
Affects: CMake/FindOpenJPEG.cmake
**** Changes from 2022.03.04 (eichelberg)
- Fixed warning caused by previous commit.
Affects: dcmfg/libsrc/concatenationcreator.cc
**** Changes from 2022.03.03 (onken)
- Fix some binary segmentation concatenations:
When producing binary concatenations of segmentations objects using
a configuration where the number of bytes per concatenation instance is
not dividable by 8 (i.e. where in such an instance numFrames * rows *
cols % 8 != 0), not all bits (pixels) have been copied correctly from
the source image into the concatenation instance.
The problem has been fixed by adapting number of frames in the
concatenation instance so that numFrames * rows * cols % 8 = 0. If the
user configures numFrames (per instance) manually, the value is adapted
automatically as well (and an information is printed to the logger).
Also, when loading 1 bit / pixel segmentation concatenations, there was
a bug with clearing certain bits due to the fact that bit-shifting a
number to the right does not automatically introduce 0 but instead
introduceds 0 or 1 based on the signedness of the number's variable.
Affects: dcmfg/include/dcmtk/dcmfg/concatenationcreator.h
dcmfg/libsrc/concatenationcreator.cc
dcmiod/libsrc/iodutil.cc
**** Changes from 2022.03.03 (eichelberg)
- Fixed gcc -Wextrea warning caused by previous commit:
Fixed warning issued by gcc -Wextra caused by previous commit.
Affects: ofstd/include/dcmtk/ofstd/diag/ignrattr.def
**** Changes from 2022.03.02 (eichelberg)
- Suppress warnings about attribute redeclaration:
Suppress warnings about attribute redeclaration of inline methods,
which were issued when compiling DCMTK with Clang on Windows in
a DLL build.
Added: ofstd/include/dcmtk/ofstd/diag/ignrattr.def
Affects: dcmdata/include/dcmtk/dcmdata/dctagkey.h
ofstd/include/dcmtk/ofstd/ofdiag.h
**** Changes from 2022.03.01 (eichelberg)
- Fixed various Doxygen warnings:
Fixed various Doxygen warnings about missing parameters, return values etc.
Thanks to Marcel Baumann <[email protected]>
for the contribution.
Affects: dcmdata/include/dcmtk/dcmdata/dcchrstr.h
dcmdata/include/dcmtk/dcmdata/dcdicdir.h
dcmdata/include/dcmtk/dcmdata/dcdicent.h
dcmdata/include/dcmtk/dcmdata/dcdict.h
dcmdata/include/dcmtk/dcmdata/dcelem.h
dcmdata/include/dcmtk/dcmdata/dcfcache.h
dcmdata/include/dcmtk/dcmdata/dchashdi.h
dcmdata/include/dcmtk/dcmdata/dcistrmf.h
dcmdata/include/dcmtk/dcmdata/dcjson.h
dcmdata/include/dcmtk/dcmdata/dclist.h
dcmdata/include/dcmtk/dcmdata/dcobject.h
dcmdata/include/dcmtk/dcmdata/dcpcache.h
dcmdata/include/dcmtk/dcmdata/dcpixel.h
dcmdata/include/dcmtk/dcmdata/dcstack.h
dcmdata/include/dcmtk/dcmdata/dctagkey.h
dcmdata/include/dcmtk/dcmdata/dcvrae.h
dcmdata/include/dcmtk/dcmdata/dcvrcs.h
dcmdata/include/dcmtk/dcmdata/dcvrda.h
dcmdata/include/dcmtk/dcmdata/dcvrdt.h
dcmdata/include/dcmtk/dcmdata/dcvrpobw.h
dcmdata/include/dcmtk/dcmdata/dcvrtm.h
dcmdata/include/dcmtk/dcmdata/dcvrur.h
dcmdata/include/dcmtk/dcmdata/libi2d/i2dbmps.h
dcmimage/include/dcmtk/dcmimage/dihsvpxt.h
dcmimage/include/dcmtk/dcmimage/diqthash.h
dcmimage/include/dcmtk/dcmimage/diybrpxt.h
dcmimage/include/dcmtk/dcmimage/diyf2pxt.h
dcmimage/include/dcmtk/dcmimage/diyp2pxt.h
dcmjpeg/include/dcmtk/dcmjpeg/djcodece.h
dcmjpeg/include/dcmtk/dcmjpeg/djcparam.h
dcmjpeg/include/dcmtk/dcmjpeg/djencbas.h
dcmjpeg/include/dcmtk/dcmjpeg/djencext.h
dcmjpeg/include/dcmtk/dcmjpeg/djenclol.h
dcmjpeg/include/dcmtk/dcmjpeg/djencpro.h
dcmjpeg/include/dcmtk/dcmjpeg/djencsps.h
dcmjpeg/include/dcmtk/dcmjpeg/djencsv1.h
dcmnet/docs/cptscp.dox
dcmnet/include/dcmtk/dcmnet/cond.h
dcmnet/include/dcmtk/dcmnet/dcasccff.h
dcmnet/include/dcmtk/dcmnet/dcasccfg.h
dcmnet/include/dcmtk/dcmnet/dccfenmp.h
dcmnet/include/dcmtk/dcmnet/dfindscu.h
dcmpstat/include/dcmtk/dcmpstat/dviface.h
dcmpstat/include/dcmtk/dcmpstat/dvpsfs.h
dcmpstat/include/dcmtk/dcmpstat/dvpsga.h
dcmpstat/include/dcmtk/dcmpstat/dvpsgr.h
dcmpstat/include/dcmtk/dcmpstat/dvpsgrl.h
dcmpstat/include/dcmtk/dcmpstat/dvpsibl.h
dcmpstat/include/dcmtk/dcmpstat/dvpsmsg.h
dcmpstat/include/dcmtk/dcmpstat/dvpsovl.h
dcmpstat/include/dcmtk/dcmpstat/dvpspr.h
dcmpstat/include/dcmtk/dcmpstat/dvpsrs.h
dcmpstat/include/dcmtk/dcmpstat/dvpssp.h
dcmpstat/include/dcmtk/dcmpstat/dvpsvl.h
dcmpstat/include/dcmtk/dcmpstat/dvsighdl.h
dcmqrdb/include/dcmtk/dcmqrdb/dcmqrcbs.h
dcmqrdb/include/dcmtk/dcmqrdb/dcmqrdbi.h
dcmqrdb/include/dcmtk/dcmqrdb/dcmqridx.h
dcmqrdb/include/dcmtk/dcmqrdb/dcmqrptb.h
dcmsign/include/dcmtk/dcmsign/sicertvf.h
dcmsign/include/dcmtk/dcmsign/sipkey.h
dcmsign/include/dcmtk/dcmsign/sisprof.h
dcmtls/include/dcmtk/dcmtls/tlsciphr.h
dcmtls/include/dcmtk/dcmtls/tlslayer.h
dcmtls/include/dcmtk/dcmtls/tlsopt.h
dcmwlm/include/dcmtk/dcmwlm/wlds.h
dcmwlm/include/dcmtk/dcmwlm/wlfsim.h
dcmwlm/include/dcmtk/dcmwlm/wlmactmg.h
oflog/include/dcmtk/oflog/helpers/strhelp.h
oflog/include/dcmtk/oflog/spi/filter.h
ofstd/include/dcmtk/ofstd/oflimits.h
ofstd/include/dcmtk/ofstd/ofstd.h
ofstd/include/dcmtk/ofstd/oftest.h
ofstd/include/dcmtk/ofstd/ofvriant.h
**** Changes from 2022.02.21 (riesmeier)
- Fixed typos and revised line breaks.
Affects: dcmtls/docs/certstor.dox
**** Changes from 2022.02.18 (riesmeier)
- Do not create new document in readXML():
Do not create a new document in readXML(), but change the document type.
This also avoids confusing messages to the logger.
Affects: dcmsr/libsrc/dsrdoc.cc
- Made XML elements "date" and "time" optional:
The XML elements "instance/creation/date" and "instance/creation/time"
are optional according to the XML Schema. Therefore, the readXML() method
should not require them to be present if the surrounding XML element is
present.
Affects: dcmsr/libsrc/dsrdoc.cc
- Do not set instance creator UID automatically:
Do not set instance creator UID automatically to identify instances that
have been created by this toolkit.
Affects: dcmsr/libsrc/dsrdoc.cc
**** Changes from 2022.02.11 (riesmeier)
- Extended comment on Type of Modality attribute.
Affects: dcmdata/libsrc/dcddirif.cc
**** Changes from 2022.02.10 (riesmeier)
- Added check on empty Unique Keys in "strict mode":
Report an error if a Unique Key value is empty for C-FIND (higher levels) or
C-MOVE (all levels down to the Q/R level) request. See DICOM PS3.4 Section
C.2.2.1.1, C.4.1.2.1 and C.4.2.2.1 for details.
This check is only performed in "strict mode", i.e. when dcmqrscp is called
with option --check-find (-XF) or --check-move (-XM), respectively.
This closes DCMTK Bug #1015.
Thanks to Abdallah Maouche <[email protected]> for the report and
suggested fix.
Affects: dcmqrdb/libsrc/dcmqrdbi.cc
**** Changes from 2022.02.09 (riesmeier)
- Updated Doxygen configuration files:
Updated Doxgen configuration files to version 1.8.17 of this tool.
The update has been performed by calling "doxygen -u <filename>".
Affects: doxygen/htmldocs.cfg
doxygen/manpages.cfg
- Made use of DCM_PixelItemTag where appropriate.
Affects: dcmdata/tests/tsequen.cc
**** Changes from 2022.02.08 (riesmeier)
- Added missing well-known frame of reference:
Also removed Unicode characters from UID name of the Microscopy Bulk Simple
Annotations Storage SOP Class.
Affects: dcmdata/include/dcmtk/dcmdata/dcuid.h
dcmdata/libsrc/dcuid.cc
- Introduced plural form where appropriate:
Use plural form for Ophthalmic Photography Image SOP classes since there
is one for 8-bit and one for 16-bit images, i.e. there are two of them.
Also fixed other minor documentation issues.
Affects: dcmdata/apps/img2dcm.cc
dcmdata/docs/img2dcm.man
- Fixed spelling of attribute name in log message.
Affects: dcmdata/libi2d/i2dplnsc.cc
dcmdata/libi2d/i2dplop.cc
dcmdata/libi2d/i2dplvlp.cc
- Removed email addresses and trailing spaces.
Affects: CREDITS
**** Changes from 2022.02.08 (eichelberg)
- Updated credits to include Segmed, Inc.
Affects: CREDITS
**** Changes from 2022.01.26 (riesmeier)
- Updated code definitions for DICOM 2022a:
Updated automatically generated code definitions for coding scheme "DCM".
For the coding schemes "NCIt" and "UMLS", there were no changes.
Affects: dcmsr/include/dcmtk/dcmsr/codes/dcm.h
dcmsr/include/dcmtk/dcmsr/codes/ncit.h
dcmsr/include/dcmtk/dcmsr/codes/umls.h
- Updated data dictionary for DICOM 2022a:
Updated data dictionary for the latest edition of the DICOM standard, which
has been released only recently.
Since one of the DICOM attributes was "retired", the name of the associated
DcmTagKey constant also changed. This required minor changes to the source
code of the dcmrt module (automatically generated source files).
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
dcmrt/libsrc/drtionpl.cc
dcmrt/libsrc/drtplan.cc
**** Changes from 2022.01.11 (onken)
- Fixed build warnings.
Affects: dcmfg/libsrc/fgbase.cc
dcmseg/libsrc/segdoc.cc
dcmseg/tests/tbigdim.cc
**** Changes from 2022.01.09 (riesmeier)
- Removed extra space.
Affects: CMake/3rdparty.cmake
- Fixed typo.
Affects: dcmseg/include/dcmtk/dcmseg/segtypes.h
**** Changes from 2022.01.08 (eichelberg)
- Fixed further build error.
Affects: dcmseg/libsrc/segtypes.cc
**** Changes from 2022.01.07 (onken)
- Fixed build errors on some systems:
Fixed build errors on some systems introduced in commit 345223.
Affects: dcmseg/include/dcmtk/dcmseg/segdoc.h
dcmseg/libsrc/segdoc.cc
dcmseg/tests/tbigdim.cc
**** Changes from 2022.01.06 (onken)
- Allow up to 2^31-1 frames in segmentations:
At several occassions dcmseg and underlying modules limited the number
of frames, e.g. by (partly) restricting this value to 16 bit.
Now in theory 2^31-1 frames are possible, though the size for
non-concatenation instances is still limited to around 4 GB imposed by
the Pixel Data element's length field for uncompressed pixel data.
Added method on segmentations and underlying Multi-frame Dimension
module that prevents running dimension checking (especially Dimension
Index Pointer attributes) which can slow down writing a lot if many
frames are written.
Also made some simplifications and added documentation.
Added: dcmseg/tests/tbigdim.cc
Affects: dcmfg/libsrc/fginterface.cc
dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h
dcmiod/libsrc/iodutil.cc
dcmiod/libsrc/modmultiframedimension.cc
dcmseg/include/dcmtk/dcmseg/segdoc.h
dcmseg/include/dcmtk/dcmseg/segment.h
dcmseg/include/dcmtk/dcmseg/segtypes.h
dcmseg/libsrc/segdoc.cc
dcmseg/libsrc/segment.cc
dcmseg/libsrc/segtypes.cc
dcmseg/tests/CMakeLists.txt
dcmseg/tests/Makefile.dep
dcmseg/tests/Makefile.in
dcmseg/tests/tests.cc
**** Changes from 2022.01.05 (eichelberg)
- Replaced C_CHAR_UNSIGNED test by a compile-only one:
Replaced the test for the signedness of the char type, which so far
needed to execute a test program with TRY_RUN, with test code that only
needs to compile, but not run, which makes things easier in a cross-compilation
setting.
Thanks to Helmut Grohne <[email protected]> for the suggestion and patch.
This closes Github pull request #44.
Affects: CMake/GenerateDCMTKConfigure.cmake
INSTALL
Removed: CMake/dcmtkTestCharSignedness.cc
- Added CMake option DCMTK_PORTABLE_LINUX_BINARIES:
Added CMake option DCMTK_PORTABLE_LINUX_BINARIES that is intended to help
with the generation of binary executables that run on different distributions.
When this option is enabled, only static versions of the third party libraries
are detected and used, and the linker is run with the options -static-libgcc
-static-libstdc++, which cause a static version of libgcc and libstdc++ to be
used. Note that glibc is still dynamically loaded, because a statically linked
glibc actually causes portability issues due to glibc components loaded from
shared objects at runtime.
The new option does not yet handle the link dependencies of the external
libraries (such as libxml2 requiring zlib) properly. In order to handle these,
one would have to identify the dependencies using pkg-config and then search
for static versions of all dependencies, possibly recursively.
Affects: CMake/3rdparty.cmake
CMake/dcmtkPrepare.cmake
**** Changes from 2022.01.04 (eichelberg)
- Fixed issue with defragmentTCP() in non-blocking mode on Windows, where the
WSAEWOULDBLOCK return code was not properly handled in the past.
Thanks to DCMTK forum user "wrenashe".
This closes DCMTK issue #1006.
Affects: dcmnet/libsrc/dulfsm.cc
**** Changes from 2021.12.28 (eichelberg)
- Fixed indentation.
Affects: dcmjpls/libsrc/djcodecd.cc
- Updated warning message.
Affects: dcmjpls/libsrc/djcodecd.cc
**** Changes from 2021.12.22 (eichelberg)
- Corrected handling of character set for HG images:
The dcmpsprt tool reads an image (and optionally a presentation state)
and prepares a print job that is stored as a set of SP and HG files,
which can be spooled to a print server using dcmprscu. The HG image
contained some patient attributes (such as the PatientName) of the
original image, but did not proporly copy SpecificCharacterSet.
Thanks to Daniel Calvo <[email protected]> for the bug report and fix.
Affects: dcmpstat/libsrc/dcmpstat.cc
dcmpstat/libsrc/dviface.cc
**** Changes from 2021.12.14 (eichelberg)
- Initialize buffer to zero.
Affects: dcmqrdb/libsrc/dcmqrtis.cc
- Removed dead code to avoid warning.
Affects: dcmnet/libsrc/dimse.cc
**** Changes from 2021.12.11 (eichelberg)
- Fixed undefined behavior in handling A-ASSOCIATE-RJ:
Function ASC_getRejectParameters() did not properly validate the parameters of
an incoming A-ASSOCIATE-RJ packet, causing undefined behavior in the case
of invalid data. Proper validation has now been added.
Thanks to Matthias Gierlings <[email protected]>
of the MITSicherheit.NRW project for the bug report.
Affects: dcmnet/libsrc/assoc.cc
**** Changes from 2021.12.06 (riesmeier)
- Updated code definitions for DICOM 2021e:
Updated automatically generated code definitions for coding scheme "DCM".
For the coding schemes "NCIt" and "UMLS", there were no changes.
Affects: dcmsr/include/dcmtk/dcmsr/codes/dcm.h
dcmsr/include/dcmtk/dcmsr/codes/ncit.h
dcmsr/include/dcmtk/dcmsr/codes/umls.h
**** Changes from 2021.12.03 (onken)
- Fixed bug when adding more than 65535 frames.
Affects: dcmiod/libsrc/iodutil.cc
**** Changes from 2021.12.02 (eichelberg)
- Added logger output for OpenSSL initialization:
Added logger output for the case that the dcmsign module is unable
to load the legacy provider (introduced in OpenSSL 3.0.0) during
initialization. In this case certain hash key algorithms, including
RIPEMD160, are unavailable.
Affects: dcmsign/libsrc/dcsignat.cc
**** Changes from 2021.11.26 (riesmeier)
- Fixed Media Storage SOP Class UID in DICOMDIR:
Fixed wrong value for Media Storage SOP Class UID (0002,0002) that was
added to the File Meta Information Header of a DICOMDIR file. Instead
of 1.2.840.10008.1.3.10 (Media Storage Directory Storage SOP Class) the
private DCMTK-specific SOP Class UID 1.2.276.0.7230010.3.1.0.1 was used.
This was a result of a change of the default parameter of the method
DcmFileFormat::validateMetaInfo() introduced with commit d31f92867e.
Thanks to Gilles Mevel <[email protected]> for the report and
suggested fix.
Affects: dcmdata/libsrc/dcdicdir.cc
**** Changes from 2021.11.25 (riesmeier)
- Updated data dictionary for DICOM 2021e:
Updated data dictionary for the latest edition of the DICOM standard,
which has been released only recently.
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
- Added missing spaces (removed by previous commit).
Affects: dcmfg/libsrc/concatenationloader.cc
dcmfg/tests/t_concatenation_loader.cc
**** Changes from 2021.11.25 (onken)
- Remove some typos in the codebase:
* Concatentation -> Concatenation
* intialized -> initialized
* "permits to" -> "permits one to"
* "allow to" -> "allow one to"
* "allows to" -> "allows one to"
* truely -> truly
* additonal -> additional
Thanks to GitHub user "malaterre" for the report and suggested fix.
Affects: dcmfg/libsrc/concatenationcreator.cc
dcmfg/libsrc/concatenationloader.cc
dcmfg/tests/t_concatenation_loader.cc
dcmjpeg/docs/dcmcjpeg.man
dcmpstat/apps/dcmpsmk.cc
dcmpstat/docs/dcmp2pgm.man
dcmpstat/docs/dcmprscp.man
dcmpstat/docs/dcmpsmk.man
dcmwlm/docs/wlmscpfs.man
**** Changes from 2021.11.25 (eichelberg)
- Fixed CMake OpenSSL feature tests:
On some platforms, the OpenSSL test cases need to be linked against the
pthread library, because otherwise linker errors lead to incorrect test
results, e.g. for the macro HAVE_OPENSSL_X509_ALGOR_GET0_CONST_PARAM.
The OpenSSL feature tests are now executed after the THREAD_LIBS variable
has been defined, and take into account its content.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/dcmtkPrepare.cmake
**** Changes from 2021.11.22 (riesmeier)
- Replaced OFListIterator by OFListConstIterator:
Replaced type of iterator variable to OFListConstIterator to avoid
compiler errors reported by gcc when compiling DICOMscope with STL
and C++14 support enabled.
Thanks to GitHub user "malaterre" for the report and suggested fix.
Affects: dcmsr/include/dcmtk/dcmsr/dsrtlist.h
**** Changes from 2021.11.20 (eichelberg)
- Improvements to pkg-config support.
Affects: CMakeLists.txt
Renamed: dcmtk.pc.in
-> CMake/dcmtk.pc.in
**** Changes from 2021.11.17 (riesmeier)
- Changed order of OpenSSL libraries (Autoconf):
Changed order of additional libraries for OpenSSL 1.0.1.
Affects: config/configure.in
**** Changes from 2021.11.16 (riesmeier)
- Fixed comment on Autoconf define HAVE_CXX.
Affects: config/configure
config/include/dcmtk/config/osconfig.h.in
config/stdcxx.m4
- Fixed issue with findAndGetUint16Array() for OB:
Fixed issue with findAndGetUint16Array() when accessing pixel data that
is stored with a VR of "OB" (Other Byte). In this case, this method
returned an incorrect value for the optional "count" parameter. Of
course, the method findAndGetUint8Array() should be used for "OB" data,
but the returned number of elements in the array should be correct in
any case.
Now, all findAndGetXXXArray() methods again use the data element length
for determining the value of the "count" parameter, which requires no
handling of special cases.
Thanks to forum user "st80rules" for the report.
Affects: dcmdata/libsrc/dcitem.cc
- Enhanced Autoconf build system for OpenSSL checks:
Enhanced GNU Autoconf build system (aka configure) for the recently
changed CMake approach to check support for certain OpenSSL features.
Also revised, i.e. simplified and harmonized, the use of the M4 macros
AH_TEMPLATE and AC_DEFINE.
Affects: config/aclocal.m4
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
**** Changes from 2021.11.16 (goldhammer)
- Fixed confusing value of Host Type on Windows:
When compiling 32-bit binaries on Windows, the Host type was still shown as
"AMD64". This was confusing and misleading. Now 32-bit binaries should show
"Win32", whereas 64-bit binaries should show "x64".
This closes DCMTK issue #940.
Affects: CMake/GenerateDCMTKConfigure.cmake
**** Changes from 2021.11.16 (eichelberg)
- Documented cross-compiling support:
Documented the support for cross-compiling DCMTK using the CMake toolchain.
Thanks to Claus Stovgaard <[email protected]> for the implementation!
Affects: INSTALL
- Fixed previous commit:
One symbol was not renamed consistently in the previous commit,
this is now fixed.
Affects: dcmtls/libsrc/tlsciphr.cc
**** Changes from 2021.11.15 (eichelberg)
- Renamed OpenSSL related feature test symbols:
Renamed all OpenSSL related feature test preprocessor symbols to
include the term OPENSSL to make it clear that these features
are related to the OpenSSL library.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
dcmsign/include/dcmtk/dcmsign/simdmac.h
dcmsign/libsrc/dcsignat.cc
dcmsign/libsrc/sicert.cc
dcmsign/libsrc/siprivat.cc
dcmsign/libsrc/sitstamp.cc
dcmtls/libsrc/tlsciphr.cc
dcmtls/libsrc/tlslayer.cc
dcmtls/libsrc/tlstrans.cc
**** Changes from 2021.11.12 (eichelberg)
- Fixed memory leak in DcmElement::getPartialValue():
Fixed a memory leak in DcmElement::getPartialValue() that occured when the
input stream created for reading the partial element from the DICOM file
had status "bad" after creation, e.g. because the DICOM file had been removed.
Thanks to DCMTK forum user Shaeto for the bug report.
This closes DCMTK issue #1010.
Affects: dcmdata/libsrc/dcelem.cc
**** Changes from 2021.11.11 (riesmeier)
- Added support for two new Storage SOP Classes:
Added definition of new Storage SOP Class UIDs introduced with Supplement
160 (Second Generation Radiotherapy - Patient Setup and Delivery Instruction).
This commit also adds support for the various networking tools and to the
DICOMDIR generation code.