forked from DCMTK/dcmtk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES.364
3228 lines (2722 loc) · 127 KB
/
CHANGES.364
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.4 (Public Minor Release - 2018-11-29)
**** Changes from 2018.11.29 (schlamelcher)
- Created CHANGES.364 for DCMTK release 3.6.4:
CHANGES.364 contains the Git commit history since DCMTK release 3.6.3.
Added: docs/CHANGES.364
- Updated man pages for DCMTK release 3.6.4.
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.4.
Affects: CMake/dcmtkPrepare.cmake
VERSION
- Updated ANNOUNCE and INSTALL for DCMTK release 3.6.4.
Affects: ANNOUNCE
INSTALL
- Updated Autoconf config for upcoming release 3.6.4:
Updated version information.
Updated Makefile dependencies.
Affects: config/configure
config/configure.in
dcmwlm/libsrc/Makefile.dep
**** Changes from 2018.11.28 (eichelberg)
- Fixed buffer overflow in DcmRLEDecoder::decompress():
Fixed buffer overflow in DcmRLEDecoder::decompress() that can cause an
application crash (segmentation fault) when an RLE compressed image
with an invalid RLE offset table is decoded.
Thanks to Omar Ganiev <[email protected]>, DeteAct Team,
Open Medical Infrastructure Security Project, for the bug report.
This closes DCMTK bug #858.
Affects: dcmdata/libsrc/dcrleccd.cc
**** Changes from 2018.11.27 (schlamelcher)
- Updated DIMSE compatibility flag:
Updated DIMSE compatibility flag to reflect recent changes in the networking
code. Windows now uses socklen_t as it originally should, due to the
respective configuration test having being fixed recently. This normally
should not affect the behavior of the network code (as socklen_t should
typically be defined to the type that was used before anyway), but better safe
than sorry.
Affects: dcmnet/include/dcmtk/dcmnet/dul.h
**** Changes from 2018.11.23 (riesmeier)
- Fixed various issues with syntax usage:
Fixed various issues with syntax usage of command line tools cda2dcm, pdf2dcm
and stl2dcm: typos, formatting, grouping, description, etc. Now, the --help
output and the manpages should be more consistent with all other DCMTK tools.
Affects: dcmdata/docs/cda2dcm.man
dcmdata/docs/pdf2dcm.man
dcmdata/docs/stl2dcm.man
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.11.23 (arizpegomez)
- Removed stl2dcm support for ASCII STL files:
According to the DICOM standard, only binary stl files should be accepted,
therefore this commit removes support for ASCII stl files.
Affects: dcmdata/libsrc/dcencdoc.cc
- Fixed formatting inconsistencies in stl2dcm --help.
Affects: dcmdata/docs/stl2dcm.man
dcmdata/libsrc/dcencdoc.cc
- Fixed manpage formatting inconsistencies in encapsulation apps.
Affects: dcmdata/docs/cda2dcm.man
dcmdata/docs/pdf2dcm.man
dcmdata/docs/stl2dcm.man
**** Changes from 2018.11.23 (schlamelcher)
- Added a missing include:
Yesterdays commit (unknowingly) fixed the configuration test for socklen_t
on Windows which has been faulty since its original introduction in 2010.
This unveiled the sloppy work in various network related source files that
failed to include "ws2tcpip.h" required for using socklen_t on Windows.
Affects: dcmnet/libsrc/dul.cc
dcmnet/libsrc/dulfsm.cc
dcmpstat/tests/msgserv.cc
**** Changes from 2018.11.22 (schlamelcher)
- Added another iconv configuration test:
Added another configuration test determining whether a standard library iconv
implementation understands empty strings as arguments to iconv_open().
This should fix the failing unit test on NetBSD by no longer testing features
that are not supported there.
Added: config/tests/lciconv.cc
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
config/tests/iconv.cc
ofstd/include/dcmtk/ofstd/ofchrenc.h
ofstd/libsrc/ofchrenc.cc
ofstd/tests/tchrenc.cc
- Added missing includes for configuration tests:
Added <winsock2.h> and <ws2tcpip.h> during configuration testing under
Windows, since otherwise getaddrinfo() won't be detected.
Affects: CMake/GenerateDCMTKConfigure.cmake
**** Changes from 2018.11.21 (schlamelcher)
- Fixed wrong documentation of calcElementLength():
The documentation of DcmObject::calcElementLength() stated that the function
never returned an undefined length. This is no longer true since a previous
commit introduced overflow handling that maps an overflow during length
calculation to the maximum possible value (clamping), which, coincidentally,
equals the constant defined as DCM_UndefinedLength.
This commit adjusts the documentation of calcElementLength() in DcmObject and
derived classes accordingly.
Affects: dcmdata/include/dcmtk/dcmdata/dcdatset.h
dcmdata/include/dcmtk/dcmdata/dcelem.h
dcmdata/include/dcmtk/dcmdata/dcfilefo.h
dcmdata/include/dcmtk/dcmdata/dcmetinf.h
dcmdata/include/dcmtk/dcmdata/dcobject.h
dcmdata/include/dcmtk/dcmdata/dcpixseq.h
- Fixed not detecting some functions on 32 bit Windows:
The CMake primitive check_function_exists() may fail on 32 bit Windows due to
name mangling. Modified GenerateDCMTKConfigure to always use CheckSymbolExists
instead on Windows as a workaround. Adjusted the list of header files to
include during the tests accordingly (what a pain in the ass).
This closes DCMTK bug #839.
Affects: CMake/GenerateDCMTKConfigure.cmake
- Fixed generated CMake exports install destination:
Since the transition to GNUInstallDirs, DCMTK_INSTALL_CMKDIR already contains
CMAKE_INSTALL_PREFIX. Therefore, INSTALL_DESTINATION in GeneratedCMakeExports
became set to an invalid, duplicated path.
Thanks to Florian Franzen <[email protected]> for the report and
suggested patch.
Affects: CMake/GenerateCMakeExports.cmake
**** Changes from 2018.11.21 (riesmeier)
- Fixed bug introduced with last commit (0f80c07):
Removed unused reference parameter of callback class constructor. This also
fixes a bug introduced with the last commit when trying to get rid of a
compiler warning: Setting the reference parameter "responseCount" to 0
resulted in response files being overwritten when multiple C-FIND requests
are issued during a single association (e.g. using findscu with multiple
query files).
Affects: dcmnet/include/dcmtk/dcmnet/dfindscu.h
dcmnet/libsrc/dfindscu.cc
**** Changes from 2018.11.20 (riesmeier)
- Removed useless for-loop (since VM is always 1):
Removed useless for-loop in isUniversalMatch(). The VM of the VR "UR" is 1
by definition, so getVM() never returns a value that is greater than 1.
This finally closes DCMTK Bug #807.
Affects: dcmdata/libsrc/dcvrur.cc
**** Changes from 2018.11.19 (eichelberg)
- Fixed warning about unused parameter (gcc -Wextra).
Affects: dcmnet/libsrc/dfindscu.cc
**** Changes from 2018.11.15 (riesmeier)
- Added sentence on compression of icon images:
Added sentence explaining that all Pixel Data (7fe0,0010) elements are
compressed, which also includes an icon image (if present).
Thanks to Mathieu Malaterre <[email protected]> for the
suggestion.
Affects: dcmdata/docs/dcmcrle.man
dcmjpeg/docs/dcmcjpeg.man
dcmjpls/docs/dcmcjpls.man
- Updated data dictionary for approved changes:
Updated data dictionary for recently approved changes to the DICOM standard,
i.e. Supplement 188 (Multi-energy CT Images) as well as CP-1803 and CP-1809.
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
**** Changes from 2018.11.13 (eichelberg)
- Implemented DICOM CP 1653 in the JPEG codec:
Implemented DICOM CP 1653, which forbids the use of the YBR_FULL
photometric interpretation in lossy JPEG transfer syntaxes, which was
the default in DCMTK. Only YBR_FULL_422 (with 4:2:2 subsampling) is
permitted now. Changed the default behaviour of the JPEG encoder
accordingly and renamed dcmcjpeg's --sample-422 command line option to
--nonstd-444. Furthermore, subsampling is now suppressed in all lossless
JPEG encoding processes.
This closes DCMTK issues #716, #717 and #811.
Affects: dcmjpeg/apps/dcmcjpeg.cc
dcmjpeg/docs/dcmcjpeg.man
dcmjpeg/include/dcmtk/dcmjpeg/djencode.h
dcmjpeg/libsrc/djeijg12.cc
dcmjpeg/libsrc/djeijg16.cc
dcmjpeg/libsrc/djeijg8.cc
**** Changes from 2018.11.12 (eichelberg)
- Fixed a warning reported by gcc 8:
Fixed a warning reported by gcc 8 with -Wformat-overflow and increased
DIC_NODENAME_LEN to 270 to ensure that DIC_NODENAME is large enough
for any valid DNS name and port number.
Thanks to Mathieu Malaterre <[email protected]> for the report.
Affects: dcmnet/include/dcmtk/dcmnet/dicom.h
dcmqrdb/libsrc/dcmqrcbm.cc
**** Changes from 2018.11.09 (onken)
- Fix index checking if no measurem. are available.
Affects: dcmtract/libsrc/trcmeasurement.cc
- Make checkValuesComplete() public:
Thanks to Isaiah Norton <[email protected]> for the report and
fix.
Affects: dcmtract/include/dcmtk/dcmtract/trcmeasurement.h
**** Changes from 2018.11.08 (riesmeier)
- Fixed wrong initialization order of members:
Fixed wrong initialization order of member variables (reported by gcc with
option -Wreorder, which is enabled by default since -Wall is typically set).
Also fixed some typos in comments (API documentation).
Affects: dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.11.08 (schlamelcher)
- Added configure test to workaround an Android issue.
Affects: CMake/GenerateDCMTKConfigure.cmake
**** Changes from 2018.11.07 (riesmeier)
- Added configure test for HAVE_STREAMBUF_H:
Added missing configure test for HAVE_STREAMBUF_H.
This closes DCMTK Bug #761.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
**** Changes from 2018.11.07 (schlamelcher)
- More fixes for iconv configure test:
Fixed passing LINK_LIBRARIES to DCMTK_TRY_RUN, which resulted in link library
flags (e.g. debug) being misunderstood as library names.
Fixed not considering result of other configure test
(LIBICONV_SECOND_ARGUMENT_CONST) for calling iconv() during this test.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/dcmtkTryRun.cmake
config/tests/iconv.cc
**** Changes from 2018.11.07 (onken)
- Fixed indexing bugs and parameter constness:
Thanks to Isaiah Norton <[email protected]> for the report and
fix.
Affects: dcmtract/include/dcmtk/dcmtract/trctrackset.h
dcmtract/libsrc/trcmeasurement.cc
dcmtract/libsrc/trctrackset.cc
**** Changes from 2018.11.06 (riesmeier)
- Increased precision of floating point output:
Increased precision of floating point values (VR = FL and FD) in print()
method, which is also used for XML output. The output should now be
consistent with the corresponding VR classes in module "dcmdata".
Thanks to Mathieu Malaterre <[email protected]> for the report.
Affects: dcmsr/libsrc/dsrsc3gr.cc
dcmsr/libsrc/dsrscogr.cc
dcmsr/libsrc/dsrtcoto.cc
**** Changes from 2018.11.06 (schlamelcher)
- Fixed Worklist SCP not accepting some time queries:
The Worklist SCP (dcmwlm) did not accept time / time range queries that only
contained hours (e.g. 12-14) since the hard coded VR checking routines were to
strict.
Rewrote the code to use DcmAttributeMatching for separating range queries into
the individual components and applying the existing VR checker from DcmElement
on each of them instead.
Affects: dcmwlm/include/dcmtk/dcmwlm/wlds.h
dcmwlm/libsrc/wlds.cc
- Added handy overload for OFStandard::trimString():
The new overload takes a const char* and a size_t reference instead of two
const char* references, since this is a way to passed strings that is used
similarly often.
Affects: ofstd/include/dcmtk/ofstd/ofstd.h
ofstd/libsrc/ofstd.cc
- Enhanced recently introduced iconv configure test:
Ensured conversion mode DiscardIllegalSequences is detected even if no
terminating null character is written to the output buffer, performing the
test based on the size values and not based on the resulting string.
Affects: config/tests/iconv.cc
- Fixed argument order for iconv_open() in config test:
The recently introduced configure test for iconv conversion flags used
icon_open() in a wrong way, leading to wrong results (always
AbortTranscodingOnIllegalSequence, which is correct in most cases but not
always).
Affects: config/tests/iconv.cc
- More fixes for iconv stuff:
The configuration test for detecting fixed iconv conversion behavior now
respects required include directories and libraries in case iconv is not part
of the C standard library.
Fixed getConversionFlags() implementation based on libiconv > 1.08 returning 0
(unknown) when no flags were set, instead of the actual behavior in that case,
AbortTranscodingOnIllegalSequence.
Affects: CMake/GenerateDCMTKConfigure.cmake
config/configure
config/configure.in
ofstd/libsrc/ofchrenc.cc
ofstd/tests/tchrenc.cc
**** Changes from 2018.11.05 (schlamelcher)
- Fixed another iconv related issue:
Old versions of the iconv library also don't provide the iconvctl function,
similar to an iconv implementation that is part of the C standard library.
The recently introduced configure test is now also applied in that case to
detect such an implementations fixed behavior.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
ofstd/libsrc/ofchrenc.cc
- Fixed a missing return statement by refactoring:
Fixed an issue in a previous commit and refactored some #if #else spaghetti
code to make it more readable and prevent issues like that in the future.
Affects: ofstd/libsrc/ofchrenc.cc
- Added forgotten configure test source file.
Added: config/tests/iconv.cc
**** Changes from 2018.11.04 (riesmeier)
- Option --output-directory requires --port:
Option --output-directory only makes sense if option --port is used.
Therefore, we check this dependency when evaluating the command line.
In addition, --no-port now really disables any previously specified
--port option. This is needed since the command line options are
evaluated from right to left.
Affects: dcmnet/apps/movescu.cc
**** Changes from 2018.11.02 (schlamelcher)
- Added a configure test for stdlibc iconv behavior:
Different iconv implementations inside the C standard library handle invalid
sequences quite differently. The new configuration test tries its best to
determine the given implementation's behavior and map it to one of the defined
conversion flags.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMake/osconfig.h.in
config/configure
config/configure.in
config/include/dcmtk/config/osconfig.h.in
ofstd/libsrc/ofchrenc.cc
- Fixed a bug in yesterday's commit:
Yesterday's commit did not handle the case where OFString_npos was passed to
denote the maximum number of available characters in a string and instead
forwarded it to OFString::append() unchanged.
OFString silently corrects this error while an actual STL string throws an
exception.
Affects: dcmdata/libsrc/dcelem.cc
**** Changes from 2018.11.01 (schlamelcher)
- Fixed initially bad naming sense in previous commit.
Affects: dcmdata/include/dcmtk/dcmdata/dcmatch.h
dcmdata/libsrc/dcmatch.cc
dcmdata/tests/tmatch.cc
- Added functions to validate range queries:
Added functions for validating DA, TM and DT (range) queries to
DcmAttributeMatching. Extended DcmAttributeMatching's unit test accordingly.
Affects: dcmdata/include/dcmtk/dcmdata/dcmatch.h
dcmdata/include/dcmtk/dcmdata/dcvrda.h
dcmdata/include/dcmtk/dcmdata/dcvrtm.h
dcmdata/libsrc/dcmatch.cc
dcmdata/libsrc/dcvrda.cc
dcmdata/libsrc/dcvrtm.cc
dcmdata/tests/tmatch.cc
- Added additional DA, DT and TM check functions:
Added additional check() functions to the respective VR classes for VRs DA, DT
and TM. The new functions operate on single values (VR=1) and (sub-) string
views instead of whole strings, preventing unnecessary string copies.
The old checkStringValue() functions are now based one these newly introduced
functions.
Affects: dcmdata/include/dcmtk/dcmdata/dcvrda.h
dcmdata/include/dcmtk/dcmdata/dcvrdt.h
dcmdata/include/dcmtk/dcmdata/dcvrtm.h
dcmdata/libsrc/dcvrda.cc
dcmdata/libsrc/dcvrdt.cc
dcmdata/libsrc/dcvrtm.cc
- Various enhancements for VR checking code:
Introduced additional API for operating on substring views instead of copies,
preventing various unnecessary string copy operations.
Replaced legacy input buffer code with OFString - this was a memory leak
waiting to happen.
Refactored code to match RAII paradigm.
Affects: dcmdata/include/dcmtk/dcmdata/dcelem.h
dcmdata/include/dcmtk/dcmdata/vrscan.h
dcmdata/libsrc/dcelem.cc
dcmdata/libsrc/vrscan.cc
**** Changes from 2018.10.30 (schlamelcher)
- Updated copyright date in files from previous commit.
Affects: dcmdata/libsrc/dcmatch.cc
dcmdata/tests/tmatch.cc
- Made DcmAttributeMatchings's range separator public:
Made some private nested class of DcmAttributeMatching public, refactored it
for readability and added / enhanced the documentation. The class is now named
DcmAttributeMatching::Range.
Affects: dcmdata/include/dcmtk/dcmdata/dcmatch.h
dcmdata/libsrc/dcmatch.cc
- Fixes and enhancements for OFpath:
Fixed borked multi root name (Windows) implementation of the append operator
(operator/=) and added various tests to the unit test as appropriate.
Fixed self append doing nothing instead of "duplicating" relative paths as it
should and added various tests to the unit test as appropriate.
Added findRootName() and based several functions on it to de-clutter code.
Added descriptions from en.cppreference.com as comments to the complex multi
root name append code.
Refactored most boolean expressions to use Yoda notation.
Affects: ofstd/include/dcmtk/ofstd/offilsys.h
ofstd/libsrc/offilsys.cc
ofstd/tests/tfilsys.cc
**** Changes from 2018.10.26 (arizpegomez)
- Updated manpages of encapsulation apps:
Improved readability of the encapsulation apps manpages.
Affects: dcmdata/docs/cda2dcm.man
dcmdata/docs/pdf2dcm.man
dcmdata/docs/stl2dcm.man
**** Changes from 2018.10.26 (schlamelcher)
- Re-fixed the clang conversion issue from yesterday.
Affects: ofstd/include/dcmtk/ofstd/variadic/helpers.h
**** Changes from 2018.10.26 (arizpegomez)
- Updated stl2dcm manpage with required module options:
Included required module options to stl2dcm manpage and also made minor
improvements for code readability and consistency in encapuslation apps.
Affects: dcmdata/docs/stl2dcm.man
dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.10.25 (arizpegomez)
- Fixed missing modules for STL encapsulation:
Included missing required modules for stl2dcm. Also made minor improvements
for code readability.
Affects: dcmdata/apps/cda2dcm.cc
dcmdata/apps/pdf2dcm.cc
dcmdata/apps/stl2dcm.cc
dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.10.25 (schlamelcher)
- Fixed a compile time type conversion issue on clang.
Affects: ofstd/include/dcmtk/ofstd/variadic/helpers.h
**** Changes from 2018.10.24 (arizpegomez)
- Fixed unused parameters and options in dcencdoc:
Removed opt_hl7InstanceId and opt_mediaTypes variables from dcencdoc, since
they were not used, and replaced them with the right variables. Also changed
the filetype to a global variable to fix warnings of unused options. Some
other changes for formatting consistency were also necessary.
Affects: dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcencdoc.cc
- Improved log output for encapsulation apps.
Affects: dcmdata/apps/cda2dcm.cc
dcmdata/apps/pdf2dcm.cc
dcmdata/apps/stl2dcm.cc
**** Changes from 2018.10.23 (arizpegomez)
- Improved STL validation with casting:
Included a reinterpret cast in dcencdoc to interpret the 32-bytes unsigned
integer indicating the number of triangles included in the STL binary file.
Also improved debug and trace output of this class.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.10.12 (arizpegomez)
- Fixed undeclared identifier error in STL verification.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.10.08 (arizpegomez)
- Fixed wrong method call on pdf2dcm.
Affects: dcmdata/apps/pdf2dcm.cc
**** Changes from 2018.10.07 (arizpegomez)
- Fixed missing attribute on CDA encapsulation:
Included 1C attribute hl7 instance identifier into cda2dcm. Also improved
formatting consistency and abbreviated most common Code System Definitions.
Affects: dcmdata/include/dcmtk/dcmdata/dcencdoc.h
dcmdata/libsrc/dcencdoc.cc
- Improved STL file verification:
Included verification for binary and ASCII STL files. Also improved format
consistency for the class managing document encapsulation.
Affects: dcmdata/libsrc/dcencdoc.cc
- Improved dcencdoc doxygen documentation.
Affects: dcmdata/include/dcmtk/dcmdata/dcencdoc.h
**** Changes from 2018.10.05 (onken)
- Fixed index check:
Thanks to Isaiah Norton<[email protected]> for the report.
Affects: dcmiod/libsrc/iodmacro.cc
**** Changes from 2018.10.04 (onken)
- Fixed dictionary test under Windows:
Use _putenv_s instead of SetEnvironmentVariable to unset
DCMDICTPATH in test dcmdata_usingDataDictionary.
Affects: dcmdata/tests/tdict.cc
**** Changes from 2018.10.04 (riesmeier)
- Updated latest tested CMake version:
Updated information on latest CMake version that has been tested to "3.12.3".
Affects: CMake/dcmtkPrepare.cmake
**** Changes from 2018.09.27 (riesmeier)
- Updated Context Group classes for DICOM 2018d:
Updated automatically generated Context Group classes for the 2018d edition
of the DICOM standard. All supported classes were updated, even though there
were only changes to CID 7469.
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/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/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 2018d:
Updated automatically generated code definitions for coding scheme "DCM",
"NCIt" and "UMLS". For the latter two, there were no changes (compared to
the previous edition).
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 2018d:
Updated data dictionary for the latest edition of the DICOM standard, which
has been released today.
Affects: dcmdata/data/dicom.dic
dcmdata/include/dcmtk/dcmdata/dcdeftag.h
dcmdata/libsrc/dcdictbi.cc
**** Changes from 2018.09.26 (onken)
- Adapt dictionary test for commit 52b3b7:
Make sure external dictionary is not loaded from DCMDICTPATH for tdict.cc
test which relies on an empty default dictionary.
Affects: dcmdata/tests/tdict.cc
**** Changes from 2018.09.21 (riesmeier)
- Added new dcmimage tool "dcmicmp".
Affects: .gitignore
- Include missing files in Doxygen's HTML output:
Made sure that missing header files are processed when generating the HTML
documentation with Doxygen. This includes type definitions, constants,
global variables and functions in all DCMTK modules.
This closes DCMTK Bug #532.
Affects: dcmfg/include/dcmtk/dcmfg/fgtypes.h
dcmimage/include/dcmtk/dcmimage/diqttype.h
dcmimgle/include/dcmtk/dcmimgle/diutils.h
dcmiod/include/dcmtk/dcmiod/cielabutil.h
dcmjpeg/include/dcmtk/dcmjpeg/djutils.h
dcmjpls/include/dcmtk/dcmjpls/djlsutil.h
dcmnet/include/dcmtk/dcmnet/dcmlayer.h
dcmnet/include/dcmtk/dcmnet/dcmtrans.h
dcmnet/include/dcmtk/dcmnet/dcuserid.h
dcmnet/include/dcmtk/dcmnet/dimse.h
dcmnet/include/dcmtk/dcmnet/dul.h
dcmqrdb/include/dcmtk/dcmqrdb/dcmqridx.h
dcmseg/include/dcmtk/dcmseg/segtypes.h
dcmsign/include/dcmtk/dcmsign/sitypes.h
dcmtls/include/dcmtk/dcmtls/tlsciphr.h
dcmtls/include/dcmtk/dcmtls/tlslayer.h
dcmtract/include/dcmtk/dcmtract/trctypes.h
dcmwlm/include/dcmtk/dcmwlm/wltypdef.h
- Fixed typo in comment.
Affects: dcmdata/include/dcmtk/dcmdata/dcjson.h
dcmdata/libsrc/dcpixel.cc
ofstd/include/dcmtk/ofstd/offname.h
ofstd/include/dcmtk/ofstd/ofgrp.h
ofstd/include/dcmtk/ofstd/ofoset.h
ofstd/include/dcmtk/ofstd/ofpwd.h
ofstd/include/dcmtk/ofstd/ofrand.h
ofstd/include/dcmtk/ofstd/ofsetit.h
ofstd/include/dcmtk/ofstd/ofuoset.h
ofstd/include/dcmtk/ofstd/ofutil.h
ofstd/include/dcmtk/ofstd/ofvector.h
**** Changes from 2018.09.18 (onken)
- Load dicitionaries from DCMDICTPATH in any case:
Load dictionaries defined by DCMDICTPATH environment variable in any
case, i.e. even if the external default dictionary is turned off.
This closes DCMTK issue #846.
Affects: dcmdata/libsrc/dcdict.cc
**** Changes from 2018.09.13 (eichelberg)
- Changed version numbering of shared objects:
The version numbering of shared objects on Posix operating systems now
follows these guidelines: https://autotools.io/libtool/version.html.
Thanks to Gert Wollny <[email protected]> for the suggestion and
patch.
Affects: CMake/dcmtkPrepare.cmake
**** Changes from 2018.09.12 (eichelberg)
- Fixed warnings about out of bounds array access.
Affects: dcmjpeg/libijg16/jdlhuff.c
**** Changes from 2018.09.10 (arizpegomez)
- Fixed a problem introduced by last commits:
The new variable ftype is now set properly on dcencdoc. Also corrected the
evaluation code for the override option. Also did some reformatting.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.09.09 (arizpegomez)
- Fixed document encapsulation modality and MIME-type settings:
dcencdoc now sets MIME-Types and Modality correctly when encapsulating files.
Affects: dcmdata/libsrc/dcencdoc.cc
- Fixed encapsulation apps log output discrepancies.
Affects: dcmdata/apps/cda2dcm.cc
dcmdata/apps/pdf2dcm.cc
dcmdata/apps/stl2dcm.cc
- Fixed option issues of dcencdoc:
The structure and order of the options in the help pages of dcencdoc now
match the man pages. Besides, annotation and override options are now
configurated correctly.
Affects: dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.09.07 (eichelberg)
- Various improvements for dcmicmp:
dcmicmp now uses a completely new routine for comparing monochrome
images without VOI LUT transformation that better copes with differing
bit depths. Furthermore, several options for computing min/max VOI
windows have been added.
Affects: dcmimage/apps/dcmicmp.cc
dcmimage/docs/dcmicmp.man
dcmimage/include/dcmtk/dcmimage/dcmicmph.h
dcmimage/libsrc/dcmicmph.cc
doxygen/manpages/man1/dcmicmp.1
**** Changes from 2018.09.06 (riesmeier)
- Avoid type mismatch warnings (sprintf and sscanf):
Avoid type mismatch warnings on some platforms when using sprintf() and
sscanf() with integer variables of a specific size (number of bits).
This is done by using the format macro constants defined in "inttypes.h".
For reasons of supporting older compilers than C99 and systems that do not
provide this header file (with the macros defined), the old code is still
retained.
This closes DCMTK Bug #764.
Affects: dcmdata/libsrc/dcpath.cc
dcmdata/libsrc/dcvris.cc
dcmdata/libsrc/dcvrsl.cc
dcmdata/libsrc/dcvrul.cc
dcmimage/libsrc/dicoimg.cc
dcmimgle/libsrc/dimoimg.cc
dcmsr/libsrc/dsrimgfr.cc
dcmsr/libsrc/dsrtcosp.cc
ofstd/include/dcmtk/ofstd/ofstdinc.h
**** Changes from 2018.09.05 (riesmeier)
- Updated Makefile dependencies.
Affects: dcmdata/apps/Makefile.dep
dcmdata/libi2d/Makefile.dep
dcmdata/libsrc/Makefile.dep
dcmdata/tests/Makefile.dep
dcmfg/libsrc/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/libijg16/Makefile.dep
dcmjpeg/libsrc/Makefile.dep
dcmjpls/apps/Makefile.dep
dcmjpls/libsrc/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/apps/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
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
ofstd/tests/Makefile.dep
- Made use of OFExplicitBool for OFBool parameters:
Replaced some parameters of type OFBool by OFExplicitBool in order to avoid
calling the wrong method (because of ambiguities caused by implicit type
conversions, e.g. a numeric integer constant to bool).
Affects: ofstd/include/dcmtk/ofstd/ofcmdln.h
ofstd/libsrc/ofcmdln.cc
**** Changes from 2018.09.04 (onken)
- Load external dictionaries on Windows per default:
An earlier commit (49b2a6) refactored evaluation of dictionary
configuration leading to the current situation where an external
dictionary specified by DCMTK's DCMDICTPATH environment variable
is not read on DCMTK startup on Windows systems.
This commit reverts that change, i.e. it ensures that external
dictionaries specified via DCMDICTPATH are loaded per default on
Windows.
Affects: CMake/dcmtkPrepare.cmake
dcmdata/docs/datadict.txt
**** Changes from 2018.09.04 (eichelberg)
- Fixed minor gcc warning.
Affects: dcmsr/libsrc/dsrxmld.cc
- Fixed minor gcc warning.
Affects: ofstd/libsrc/offilsys.cc
- Added workaround for decoding incomplete RLE stripes:
Added workaround that enables decoding of RLE compressed images where
a stripe contains insufficient data but is the last stripe for a given
color component. This workaround extends the earlier workaround from
commit #374fa95c8 (May 2010). It enables successful decoding of some RLE
compressed images produced by older ACUSON Ultrasound devices.
Thanks to Daniel Grieger <[email protected]> for the
patch.
Affects: dcmdata/libsrc/dcrleccd.cc
**** Changes from 2018.09.03 (eichelberg)
- Various fixes for dcmicmp.
Affects: dcmimage/apps/dcmicmp.cc
dcmimage/include/dcmtk/dcmimage/dcmicmph.h
dcmimage/libsrc/dcmicmph.cc
**** Changes from 2018.09.02 (arizpegomez)
- Fixed bug on responseCounter of findSCU:
The responseCounter of findSCU did not increment properly and therefore the
file rsp001.dcm was overwritten every time. By passing the counter as a
reference, the files are now named correctly an not overwritten. The findUser
function was also adapted in dcmqrtis and dimse and properly documented.
This fixes bug 809.
Affects: dcmnet/include/dcmtk/dcmnet/dfindscu.h
dcmnet/include/dcmtk/dcmnet/dimse.h
dcmnet/libsrc/dfindscu.cc
dcmnet/libsrc/dimfind.cc
dcmqrdb/libsrc/dcmqrtis.cc
**** Changes from 2018.09.02 (riesmeier)
- Added default manpage for new tool "dcmicmp".
Added: doxygen/manpages/man1/dcmicmp.1
- Fixed various typos and formatting issues.
Affects: dcmimage/apps/dcmicmp.cc
dcmimage/docs/dcmicmp.man
dcmimage/include/dcmtk/dcmimage/dcmicmph.h
**** Changes from 2018.09.02 (eichelberg)
- Initial release of dcmicmp, an image comparison tool:
Initial release of dcmicmp, a tool that reads two DICOM images, an
original "reference image" and a post-processed "test image" to which
some kind of processing such as a lossy image compression has been
applied. dcmicmp compares both images and computes several metrics that
describe how similar or different both images are.
Added: dcmimage/apps/dcmicmp.cc
dcmimage/docs/dcmicmp.man
dcmimage/include/dcmtk/dcmimage/dcmicmph.h
dcmimage/libsrc/dcmicmph.cc
Affects: dcmimage/apps/CMakeLists.txt
dcmimage/apps/Makefile.in
dcmimage/libsrc/CMakeLists.txt
dcmimage/libsrc/Makefile.in
**** Changes from 2018.09.01 (eichelberg)
- Added enum EW_WindowType.
Affects: dcmimgle/include/dcmtk/dcmimgle/diutils.h
- Fixed incorrect Doxygen comments.
Affects: dcmdata/include/dcmtk/dcmdata/dcpixel.h
**** Changes from 2018.08.30 (eichelberg)
- Fixed buffer overflows during assoc negotiation:
Fixed buffer overflows while parsing a malformed A-ASSOCIATE packet,
which may be caused by unchecked integer underflows.
Thanks to Peter Klotz <[email protected]> for the
bug report and patch.
This closes DCMTK issue #847.
Affects: dcmnet/libsrc/dulparse.cc
**** Changes from 2018.08.21 (eichelberg)
- Enabled JPEG decoder workaround options:
Enabled the JPEG decoder workaround options for certain faulty images,
which were so far only available in dcmdjpeg, also in dcmcjpeg and
dcmj2pnm.
Affects: dcmimage/apps/dcm2pnm.cc
dcmjpeg/apps/dcmcjpeg.cc
dcmjpeg/docs/dcmcjpeg.man
dcmjpeg/docs/dcmdjpeg.man
dcmjpeg/docs/dcmj2pnm.man
- Added workaround for Cornell bug to JPEG decoder:
Added a workaround to the lossless JPEG decoder that permits images
compressed with the Cornell codec, which creates invalid Huffman
tables for images with 16 bits/sample, to be correctly decoded.
This closes DCMTK patch #467.
Affects: dcmjpeg/apps/dcmdjpeg.cc
dcmjpeg/docs/dcmdjpeg.man
dcmjpeg/include/dcmtk/dcmjpeg/djcparam.h
dcmjpeg/include/dcmtk/dcmjpeg/djdecode.h
dcmjpeg/libijg16/jdhuff.c
dcmjpeg/libijg16/jdhuff16.h
dcmjpeg/libijg16/jdlhuff.c
dcmjpeg/libijg16/jdphuff.c
dcmjpeg/libijg16/jdshuff.c
dcmjpeg/libijg16/jpeglib16.h
dcmjpeg/libsrc/djcparam.cc
dcmjpeg/libsrc/djdecode.cc
dcmjpeg/libsrc/djdijg16.cc
dcmjpeg/libsrc/djencode.cc
**** Changes from 2018.08.18 (riesmeier)
- Further fixes for cda2dcm syntax usage / manpage.
Affects: dcmdata/docs/cda2dcm.man
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.08.17 (arizpegomez)
- Improved tabulation in encapsulation applications:
Fixed inconsistent tabulation in pdf2dcm, cda2dcm and stl2dcm and improved
the consistency of the documentation.
Affects: dcmdata/docs/cda2dcm.man
dcmdata/docs/pdf2dcm.man
dcmdata/docs/stl2dcm.man
dcmdata/libsrc/dcencdoc.cc
**** Changes from 2018.08.16 (arizpegomez)
- Fixed new inconsistencies in recent commits: