Mercurial > hg > orthanc-databases
comparison Framework/Common/ResultBase.cpp @ 435:326f8304daa1 pg-transactions
new creating temporary tables inside functions
author | Alain Mazy <am@osimis.io> |
---|---|
date | Thu, 14 Dec 2023 09:25:45 +0100 |
parents | 3d6886f3e5b3 |
children | f0976163dbe1 |
comparison
equal
deleted
inserted
replaced
434:23c7af6f671a | 435:326f8304daa1 |
---|---|
54 assert(expectedType_.size() == fields_.size() && | 54 assert(expectedType_.size() == fields_.size() && |
55 hasExpectedType_.size() == fields_.size()); | 55 hasExpectedType_.size() == fields_.size()); |
56 | 56 |
57 for (size_t i = 0; i < fields_.size(); i++) | 57 for (size_t i = 0; i < fields_.size(); i++) |
58 { | 58 { |
59 if (fields_[i] == NULL) | |
60 { | |
61 throw Orthanc::OrthancException(Orthanc::ErrorCode_NullPointer); | |
62 } | |
63 | |
64 ValueType sourceType = fields_[i]->GetType(); | 59 ValueType sourceType = fields_[i]->GetType(); |
65 ValueType targetType = expectedType_[i]; | 60 ValueType targetType = expectedType_[i]; |
66 | 61 |
67 if (hasExpectedType_[i] && | 62 if (hasExpectedType_[i] && |
68 sourceType != ValueType_Null && | 63 sourceType != ValueType_Null && |
93 if (!IsDone()) | 88 if (!IsDone()) |
94 { | 89 { |
95 for (size_t i = 0; i < fields_.size(); i++) | 90 for (size_t i = 0; i < fields_.size(); i++) |
96 { | 91 { |
97 fields_[i] = FetchField(i); | 92 fields_[i] = FetchField(i); |
93 } | |
98 | 94 |
99 if (fields_[i] == NULL) | 95 if (fields_.size() == 1 && fields_[0] == NULL) // this is a "void" result |
100 { | 96 { |
101 throw Orthanc::OrthancException(Orthanc::ErrorCode_NullPointer); | 97 return; |
102 } | |
103 } | 98 } |
104 | 99 |
105 ConvertFields(); | 100 ConvertFields(); |
106 } | 101 } |
107 } | 102 } |