https://github.com/root-project/root

sort by:
Revision Author Date Message Commit Date
7290057 "Update ROOT version files to v6.24/08." 29 September 2022, 13:03:06 UTC
f24e78d [ReleaseNotes] 6.24/08. 29 September 2022, 12:51:32 UTC
788980c Fix #11383 (deadlock at initialization) (#11384) Previously if a message (for example warning of duplicate dictionary) happened during intialization, it would trigger the initialization of gROOT and could trigger a nested Warning. for example due to the duplicate rootmap file entry and would cause a dead lock (recursiverly taking the non recursive lock GetErrorMutex(). 20 September 2022, 16:43:21 UTC
b4e5105 Putting in sync the materials implementation file with the master. 05 September 2022, 14:23:30 UTC
11db70b [geom] Fix for mixture creation based on repeating elements. (#11293) (cherry picked from commit 84f2c40f67d09e07847b8ea3de469743a6c0ebcd) 05 September 2022, 14:23:30 UTC
7ed3d54 cling: Improve support for expression in template re-substitution. This addresses the issue described in #11259. In particular it handles the case where the template parameter is a value. i.e. in the inner template of ``` __and_<is_constructible<_Rb_tree_iterator<pair<const unsigned int,string> >,const _Rb_tree_iterator<pair<const unsigned int,string> >&>,is_constructible<bool,const bool&> > ``` 02 September 2022, 03:24:43 UTC
18b47dc TTreeReaderArray: add support for Double32_t and Float16_t 02 September 2022, 03:23:13 UTC
6470225 TDataType: add builtins for Double32_t and Float16_t 02 September 2022, 03:23:13 UTC
a8c4d8e Fix to compute radiation length on call TGeoMixture::ComputeDerivedQuantities() (#11115) (#11141) cherry-picked from cd992545ae 09 August 2022, 11:51:33 UTC
39ac404 Update the freetype library from 2.6.1 to 2.12.1 This fixes the graphics with the latest Visual Studio 2022 (17.2) 08 August 2022, 06:45:45 UTC
dac6fdf Fix computation of the radiation length and nuclear interaction lengt… (#11060) (#11103) * Fix computation of the radiation length and nuclear interaction length when ROOT uses G4 units * Fix computation of the radiation length and nuclear interaction length when ROOT uses G4 units (cherry picked from commit 103bb7e4d930b4921debceec6ad7d418bacae4fc) Co-authored-by: MarkusFrankATcernch <MarkusFrankATcernch@users.noreply.github.com> 03 August 2022, 19:29:18 UTC
6188dfc Fix bug in TLatex::Copy method TAttLine::Copy was using wrong cast for target object. As a result, line attributes were overwriting some base TObject members 08 July 2022, 06:02:23 UTC
b5aa8fd Minor Geometry optimization [v6-24] (#10641) * Return node created in AddNode call * Allow skipping of voxelization in CloseGeometry call 24 May 2022, 15:05:41 UTC
c33b413 [cxxmodules] Reduce the amount of header duplications in the modules. This resolves a merging bug with libstdc++12. Fixes root-project/root#10478 Backport includes the following commit: [cxxmodules] Fix std.modulemap for older GCC (#10529) The header bits/utility.h only exists since libstdc++-12. (cherry picked from commits e88d533f1c79754dae892249818f53d0155e88fa and 2750395660c5c8c3ae617a18fefd27193587ec79) 17 May 2022, 15:13:27 UTC
ecf00e2 [cling] Do not throw CompilationExceptions on Apple M1 (#10564) See https://github.com/root-project/root/issues/7541 for details. Closes #10548 11 May 2022, 15:34:48 UTC
ab069fc stdpair: Don't reuse of emulated StreamerInfo (when having compiled info) Also: don't read past the end of the array of StreamerInfo (the indices start at -1) 28 April 2022, 19:01:05 UTC
6d8801b Add missing 'continue' to actually enable cache in StdLen 12 April 2022, 14:40:17 UTC
3ec9414 Split static init and lambda decl. Hopefully this does not increase the number of statics 12 April 2022, 14:40:16 UTC
9b40937 TClassEdit: simplify and reduce cost of static initialization. 12 April 2022, 14:40:16 UTC
3b8d825 TClassEdit: make usage of static cache container thread safe. This should fix issue #10353. 12 April 2022, 14:40:15 UTC
f22a1bf [math] Remove unused variables to fix build warnings on `mac12arm` 12 April 2022, 07:45:17 UTC
b143a04 [cling] Remove unused variables to fix build warnings on `mac11arm` 12 April 2022, 07:45:17 UTC
3c21b04 [NFC] Simplify code in TListOfEnums 06 April 2022, 15:50:38 UTC
613c085 Remove unnecessary trailing semi-colon 06 April 2022, 15:50:38 UTC
59405bf CollectionProxy: pass pair hint to R__CreateValue 06 April 2022, 15:50:38 UTC
ee73b35 Avoid reading pass the end of the StreamerInfo container. This was happening when, inadvertently, StreamerInfo were created multiple times and then immeditately deleted (for map<enumtype_without_dict, somethinelse>) 06 April 2022, 15:50:38 UTC
a2cd94b TGenCollectionProxy init: fail if the value's StreamerInfo is not there. This happened in a user case where the container (map) for a pair of an enum, which had not dictionary and something else that did have a dictionary. 06 April 2022, 15:50:38 UTC
c8b7fc6 TBufferFile: create StreamerInfo only if needed. In the 'root_serialization' use case, we ended in TBufferFile::WriteClassBuffer with no StreamerInfo created yet for the TClass for `std::vector<float>` and thus go into the branch that creates the StreamerInfo ... However, at least in that case, the call to `BuildRealData` induced the creation of the StreamerInfo but the code in `TBufferFile::WriteClassBuffer` did not notice and thus create a second one and tried to register it in the same slot. (The actual negative side effect was only an error message and a memory leak). 06 April 2022, 15:50:38 UTC
e6a004f Do the pair TClass StreamerInfo refresh only when needed 06 April 2022, 15:50:38 UTC
9db66f4 TClass: clear fLastReadInfo, fCurrentInfo when deleting TStreamerInfos 06 April 2022, 15:50:38 UTC
ae28b2e pair: Also treat unordered map 06 April 2022, 15:50:38 UTC
881426a Don't put class' enum in rootpcm global list of enums 06 April 2022, 15:50:38 UTC
32f7ab5 TProtoClass::FillTClass: Create a ListEnumsWithLock when needed 06 April 2022, 15:50:38 UTC
eb9b9fa When resetting a pair's StreamerInfo inform all collection proxies 06 April 2022, 15:50:38 UTC
dc249b1 TGenCollectionProxy: add missing nullptr protection 06 April 2022, 15:50:38 UTC
d4cbf0e Add missing TListOfEnums::FindObject. We already had TListOfEnumsWithLock but TListOfEnums::FindObject is used by rootcling 06 April 2022, 15:50:38 UTC
8617d35 io: Correct offset passed from SyntheticPair to StreamerInfo. This was a fatal typo in 96784051cc6 pair: properly update StreamerInfo. 06 April 2022, 15:50:38 UTC
e78077a rootcling: record Enum used by classes and collection. When encountering a data member of a class that is a enum or if it is use in a map or multimap, record the enum in the rootpcm. 06 April 2022, 15:50:38 UTC
8c43dd3 TStreamerInfo::Clear, also reset TStreamerElement's offset 06 April 2022, 15:50:38 UTC
98c79ba When loading a TClass for map, also update the pair's TClass. This is done also for multimap. 06 April 2022, 15:50:38 UTC
0327c93 rootpcm: Read enums before class to get the correct underlying type. 06 April 2022, 15:50:38 UTC
4b08829 [cling] Do not ACLiC-link against (non-existent) libcrypto: macOS12 moves some libs into binary blobs, they cannot be linked against. Instead, rely on whoever needs it to dlopen it, but do not ask ACLiC to link against it. Fixes ArgumentPassingCompiled_C.so on macOS 12. 24 March 2022, 06:42:36 UTC
5409404 [cling] Do not ACLiC-link against (non-existent) libssl: macOS12 moves some libs into binary blobs, they cannot be linked against. Instead, rely on whoever needs it to dlopen it, but do not ask ACLiC to link against it. Fixes ArgumentPassingCompiled_C.so on macOS 12. 24 March 2022, 06:42:36 UTC
04d8d27 [CMake][9793] Fix RPATH when linking with XCode Python on MacOS As found here: https://gitlab.kitware.com/cmake/cmake/-/issues/21947 we need to specify: target_link_options(target-name PRIVATE ${Python3_LINK_OPTIONS}) so that libROOTTPython and libPyMVA are linked with the right RPATH, when linking against the XCode Python(3) on MacOS(11,12). Otherwise, the following error appears when loading the libraries: cling::DynamicLibraryManager::loadLibrary(): dlopen(.../mac12/SPEC/soversion/V/master/build/lib/libROOTTPython.6.25.02.so, 0x0009): Library not loaded: @rpath/Python3.framework/Versions/3.8/Python3 23 March 2022, 20:23:09 UTC
31f4fad TClass for pair: avoid gathering information too early 21 March 2022, 16:44:14 UTC
26d6461 Always set kIsForeign bit for std::pair's TClass 21 March 2022, 16:44:14 UTC
55a3a6b TClass: Add clarifying comment 21 March 2022, 16:44:14 UTC
5852b70 Correcting impl of TClassEdit::IsStdPairBase(TStringView) 21 March 2022, 16:44:14 UTC
97ae6e0 Remove obsolete code comment 21 March 2022, 16:44:14 UTC
befc127 pair: properly update StreamerInfo Make sure that an old StreamerInfo transfered from an emulated TClass into a compiled or synthetic TClass is properly reset (correct TStreamerElement offfset and correct size). 21 March 2022, 16:44:14 UTC
c77babd BuildCheck: import old StreamerInfo. Because enums can change underlying type (especially since gathering the enum underlying info was inconsistent between TStreamerInfo::GenerateInfoForPair and TDataMember::Init, the schema layout for a std::pair *can* change .... 21 March 2022, 16:44:14 UTC
6b59b0a BuildCheck: std::pair is always unversioned 21 March 2022, 16:44:14 UTC
4ac1c2c TClass::IsForeign: always true for std::pair 21 March 2022, 16:44:14 UTC
5911ad0 TClass: look for collection to generate pair's TClass from. If we don't have a dictionary for a std::pair and do not have (in the call to TClass::Init) the hints necessary to build it correctly (offset and size), then look for a related collection (STL associated container) that would induce the generation of the std::pair's TClass (it's collection proxy has the necessary information). 21 March 2022, 16:44:14 UTC
be85384 TClass: don't complain about dict for pair's base class 21 March 2022, 16:44:14 UTC
b672505 tree: Always register FriendElement in external list. Always add the TFriendElement (owned by the main TTree) with the friend tree's fExternalFriends list so that it can be reset if the friend is deleted before the main TTree. Also implement TFriendElement::RecursiveRemove 19 March 2022, 17:41:13 UTC
189c41c [test] Moved `FilterDiagsRAII` class to ROOTUnitTestSupport.h (cherry-picked from 8844e28d7792900932b826c37f755504cb75067f) 15 March 2022, 23:47:12 UTC
0d83b79 [tcling] Add test against issue #8622 (cherry-picked, adapted from 50df68b968975f5487aca06013b5fc126512441a) 15 March 2022, 23:47:12 UTC
0081553 [tcling] Suppress -Wunused-result diagnostics in wrappers generated by TClingCallFunc A TClingCallFunc wrapper function might look as the excerpt below, where the function denoted by `func` may have been annotated as `[[nodiscard]]`. Note that if `ret == nullptr` the result of the call is unused. ``` extern "C" void __cf_0(void* obj, int nargs, void** args, void* ret) { if (ret) { new (ret) (return_type) ((class_name*)obj)->func(args...); } else { ((class_name*)obj)->func(args...); } } ``` In turn, this triggers warnings when used by cppyy/PyROOT, e.g. ``` >>> import ROOT >>> v = ROOT.std.vector(int)() >>> v.empty() input_line_34:10:7: warning: ignoring return value of function declared with 'nodiscard' attribute [-Wunused-result] ((const vector<int>*)obj)->empty(); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ True >>> ``` Given the above, the second call expression will be casted to `void`. Closes issue #8622. (cherry-picked from commit 69b58a1e87c3e30299a7c9d9d11f909667c9dd50) 15 March 2022, 23:47:12 UTC
37f3dc2 [tcling] Implement `TCling::ReportDiagnosticsToErrorHandler()` This function allows users to route clang diagnostics to the ROOT error handler. Closes issue ROOT-7587. (cherry-picked from commit c0cbfe1600317f836f7a2f87998d4c33a3886d69) 15 March 2022, 15:07:08 UTC
1f5d9aa [cling] Enable replacement of the default diagnostic consumer These changes enable the replacement of the default DiagnosticConsumer provided by CIFactory. Concretely, two member functions have been added to the Interpreter class: - replaceDiagnosticConsumer(): replaces the default CIFactory-provided DiagnosticConsumer. - hasReplacedDiagnosticConsumer(): returns whether the default diagnostic consumer has been replaced. (cherry-picked from commit 3dbf55d522ca867290243487837b21b6b451022f) 15 March 2022, 15:07:08 UTC
58c1e42 hadd: Remove inadvertent deletion (and subsequent re-reading) of TDirectory. This fixes issue #9939. The mechanism introduced in commits e97dc3678ae9da6628242afceca3142d6c319832 and 30fd4c79425c8be12be7af6fe1936317d1f5eec7 : TFileMerger delete directory only if we induced its creation/loading also had the unforunate consequence leading to the deletion of the TDirectory object when reading other objects, leading to the need to re-read the TDirectory objects as many time as object in the directory ... (This is triggered only for the 2nd and higher files). 11 March 2022, 23:30:52 UTC
5b2033c [skip-ci][win] Fix Visual Studio versions and add VS 2022 (#10035) * [skip-ci][win] Fix Visual Studio versions and add VS 2022 (#10033) * [skip-ci][win] Fix Visual Studio versions and add VS 2022 * [skip-ci][win] Add win64 * [skip-ci][win] Add a warning if MSVC_VERSION is not implemented * [skip-ci][win] Use FATAL_ERROR instead of WARNING 03 March 2022, 16:31:58 UTC
155fe05 TBranchElement: no drilling through new members. This resolved the problem seen at: https://github.com/cms-sw/cmssw/issues/36908#issuecomment-1036397481 and fix #9899. The problem is the rules are applied to a data member nested inside an object nested inside an STL collection that is a new data member of the class reco::HaloClusterCandidateHCAL, since it is a new member compared to the layout on file, none of the objects; from the new member down to the object on which the rules need to be run) are actually streamed and the code gathering the information to run the rule got a bit lost ; it is likely (I am checking as we speak) that in previous release the rule was not even attempted to be run ... which might actually be the desired behavior in this specific case. The solution is to have GatherArtificialElements stop drilling through data members which are not stored in the existing TTree. 18 February 2022, 17:08:51 UTC
8469a15 TBranchElement::InitInfo improve doc 18 February 2022, 17:08:51 UTC
4e75eca Add missing init of TIsAProxy::fNextLastSlot. (thanks valgrind for pointing this out) 18 February 2022, 17:08:50 UTC
34b84a4 Update warning flag for bidi characters (#9532) -Wbidirectional= was RedHat's initial proposal that they also shipped in gcc-8.5.0-4.el8 for CentOS 8. During review, the name was changed to -Wbidi-chars= which will appear in GCC 12 and was backported to the next gcc-8.5.0-5.el8. See the mailing list thread at https://gcc.gnu.org/pipermail/gcc-patches/2021-November/thread.html#583031 for details. 15 February 2022, 11:09:55 UTC
6bdc8c1 [netxng] Avoid XRootD warnings in generated source (#9582) It pulls in XRootD headers via TNetXNGFile.h, so the include directories must be added as SYSTEM. 15 February 2022, 11:09:55 UTC
43cd813 Fix compilation warning on MacOS (#9088) * Fix compilation warning on MacOS Fix the following compilation warning on MacOS: ``` builtins/xrootd/XROOTD-prefix/include/xrootd/XrdCl/XrdClOptional.hh:58:29: warning: unused parameter 'n' [-Wunused-parameter] ``` * Update net/netx/CMakeLists.txt Co-authored-by: Axel Naumann <Axel.Naumann@cern.ch> Co-authored-by: Axel Naumann <Axel.Naumann@cern.ch> 15 February 2022, 11:09:55 UTC
ccff5e1 [Build System] Workaround MacOS 10.13+ and XCode Python 3.8+ fork issue in pyspark From: http://www.sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html > The rules for using Objective-C between fork() and exec() have changed in macOS 10.13. Incorrect code that happened to work most of the time in the past may now fail. Some workarounds are available. This led to issues within the Python language, tracked at https://bugs.python.org/issue33725. Any application that makes use of e.g. multiprocessing (or in any way ends up calling MacOS system `fork` or `exec`) is affected. According to the Python bug tracker, this issue has been fixed in Python 3.8 The XCode Python 3.8 version begs to differ. In a very specific usecase, that boils down to this simple reproducer: ```python import pyspark sparkconf = pyspark.SparkConf().setAll( {"spark.app.name": "distrdf001_spark_connection", "spark.master": "local[4]", }.items()) sparkcontext = pyspark.SparkContext(conf=sparkconf) def imp(partition): import cppyy return 1 count = sparkcontext.parallelize(range(1)).map(imp).reduce(lambda x,y: x+y) ``` the issue is still triggered. Installing any other 3.8+ Python executable on a MacOS node doesn't show this behaviour, with the exact same pyspark version (3.2.1). It is possible to workaround this problem, by setting the environment variable OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES before running a test. This effectively brings back the behaviour of MacOS10.12 and previous versions. This commit uses this workaround, since we cannot directly modify how the system XCode Python on MacOS works. To give an idea of the impact of this issue (and therefore the changes in this commit), the situation where this occurs is as follows: 1. A user wants to run RDataFrame in distributed mode. 2. Their environment is MacOS 10.13+. 3. The application creates a pyspark mock cluster on the local Mac machine and the computations happen strictly in the single local node, not in a distributed cluster. Thus, it probably interests only a very small fraction of use cases for distributed RDataFrame, mainly regarding quick checks done locally before actually sending the computations to a cluster. Co-authored-by: Enric Tejedor Saavedra <enric.tejedor.saavedra@cern.ch> 15 February 2022, 09:50:04 UTC
9cd60de [DF] Set PYSPARK_PYTHON in cmake for test_backend 15 February 2022, 09:50:04 UTC
ad88a28 [http] use proper conversion from string to unsigned long Connection it can be arbitrary unsigned integer 07 February 2022, 14:34:42 UTC
017bf0b TBranchElement: do not set fOnfileObject for collection parent (type 3 or 4). This assignment is both unnecessary and harmfull. It is unnecessary because the pushd and popd of the onfile object address for those cases is already handle by the usage of PushDataCache and PopDataCache action for the branches of type 3 and 4 (via their configuration). It is harmfull because the type of the used/seen in the sub-branches might be completely different from the type of the collection content. For example, this code was crashing some CMS jobs because the sub-branches that had a "OnfileObject" corresponded to a nested sub-object (of type reco::ParticleState) and then this was (unconditionally) associated with the head node of the collection, which contained reco::PFCandidate objects (One of PFCandidate base class contains a reco::ParticleState sub-object). The assignment is triggered when visiting one of the child branch (type 31 or 41) of the collection parent branch. This is a fix for the main branch commit 875e8fb91418f9e520e5d9b22fb1d32f4a42faf0 which is fix for the issue #7754. 02 February 2022, 22:21:48 UTC
a044d6a [NFC] Typo in comment 02 February 2022, 22:21:48 UTC
fb51055 TClass::GetRealData support more than one level of nesting 02 February 2022, 22:21:46 UTC
da239a4 TBranchElement::Print add fOnfileObject to 'debugAddress' 02 February 2022, 22:17:59 UTC
2f26337 Add comment on semantic of fConfiguration->fElemId == -1 02 February 2022, 22:17:59 UTC
9cd26b0 TBranchElement::InitializeOffsets: don't confuse top level collection for missing data member 02 February 2022, 22:17:59 UTC
208613c In SetOnfileObject also determine the 'last' branch based on name. The branch ID is not reliable as for the 'later' branch it has not yet been updated from the as-seen-when-writing value to the current value. 02 February 2022, 22:17:59 UTC
534cd1a Further devel for extend io customization support: whole obj rule in split obj. Use the full name to make branch name comparisons 02 February 2022, 22:17:59 UTC
25ad09b Extend io customization support: whole obj rule in split obj with repetion In the case where the containing object held several sub-object whose type is a class which has a 'whole object' rule, prior to this commit, the infrastructure would re-use only one of the incoming object as input to the rule executions. 02 February 2022, 22:17:58 UTC
3e06488 Extend io customization support: whole obj rule in split obj. Extend the support for a rule that applies to several data members (and thus currently is applied as the 'object level') to the case of a split object embedded within a split subobject of an object (previous it worked only for the collection case). This fixes issue #8428, see also https://cdcvs.fnal.gov/redmine/issues/25893. 02 February 2022, 22:17:58 UTC
4a10a90 A few doxygen and typos fixes in tree (#7675) * A few doxygen and typos fixes in tree * better wording 02 February 2022, 22:16:23 UTC
b1cd20b Reapply "Fix the action PushDataCache for TClonesArray." It was using the wrong signature leading to the configuration to be mis-read. Fixes #7754 02 February 2022, 21:27:36 UTC
b26ed0e [jsroot] small fixes in 6.24 branch 01 February 2022, 17:42:12 UTC
42ba42f Emulated Collection Proxy always need the VectorLooper for the StreamerInfoActions This fixes #9136. Without this commit, SelectLooper would select the 'GenericLooper' in the case of an emulated proxy for STL collection with (in the name) a custom allocator. However the GenericLooper only usable for collection with a compiled collection proxy. In particular, GenericLooper is calling the 'Next' function which is not defined for vector ... and emulated collection. Using it lead to an assert complaining (right fully so) that an 'undefined' function is being called. 31 January 2022, 16:56:50 UTC
077ca40 [cxxmodules] Use the global module index only when no rootmap candidate is found In the hybrid mode when we use ROOT with modules and third party software without modules we have two name resolution systems: the global module index (GMI) and the rootmaps. In case an identifier is defined in both (eg TMVA::Event and X::Event), the GMI will take priority and load the TMVA module without later allowing the system to look for other candidates. This patch uses the GMI only when no rootmap file has told ROOT that it provides names for the given namespace. This fixes root-project/root#9583 30 January 2022, 22:23:14 UTC
6c6341f [webgui6] do not call blocking methods from ProcessData If during processing of incoming data TCanvas::Update() invoked, do not block caller until actual update is done. Otherwise deadlock is possible 26 January 2022, 13:35:38 UTC
4a9d108 Support other than RPhi and RhoZ projection types 21 January 2022, 07:25:00 UTC
fa4ded6 Add support for new projection types also in REveProjectionManager. 21 January 2022, 07:25:00 UTC
d69a7da MakeProject: generate operator= This fixes #8987 (case where the base class deletes operator=). In case where the class generated by MakeProject derived from a class that deletes the operator= then in some compiler we get the error below (which is expected since the class generated by MakeProject has a copy constructor which is needed by stl collection). ``` SRChh_ROOT6_mcgenProjectSource.cxx: In copy constructor ‘KKceex::KKceex(const KKceex&)’: SRChh_ROOT6_mcgenProjectSource.cxx:922:54: error: use of deleted function ‘KKpart& KKpart::operator=(const KKpart&)’ 922 | for (Int_t i=0;i<101;i++) m_Phot[i] = rhs.m_Phot[i]; | ^ In file included from KKceex.h:21, from KKhh2f.h:22, from SRChh_ROOT6_mcgenProjectHeaders.h:1, from SRChh_ROOT6_mcgenProjectSource.cxx:3: KKpart.h:15:7: note: ‘KKpart& KKpart::operator=(const KKpart&)’ is implicitly declared as deleted because ‘KKpart’ declares a move constructor or move assignment operator 15 | class KKpart : public TObject { | ^~~~~~ c++: error: SRChh_ROOT6_mcgenProjectSource.o: No such file or directory ``` 20 January 2022, 19:07:30 UTC
4296cf4 TStreamerInfo::New needs to use the CollectionProxy::New This fixes issue #9543 In the issue #9543, the unusual situation is the combination of: * there is (intentionally) no dictionary for `std::map<int,std::vector<int>>` * consequently we use an "emulated collection proxy" for that collection * there is (unintentional due to external config) interpreter information/ClassInfo for `std::map<int,std::vector<int>>` The crux of the issue #9543 is: * TClass::fSizeof info prefers the information from the CollectionProxy * TStreamerInfo::fSize is set to the value of TClass::fSizeOf * TClass:New prefers the constructor from the interpreter * TStreamerInfo::New was using TClass::New for that case * On the failing platform, the `sizeof(std::map<int,std::vector<int>>)` is larger than the size of the emulated collection. Since the I/O and TStreamerInfo uses the TCollection proxy and all of TStreamerInfo needs to prefer the information from the collection proxy (including the 'sizeof'). To fix #9543 the solution is for * TStremearInfo::New to prefer/use TCollectionProxy::New over TClass::New (i.e. the interpreted constructor in this particular case). 20 January 2022, 02:14:42 UTC
27b4577 Add missing include for strlcpy() 17 January 2022, 15:16:43 UTC
eb8c9f2 [v6-24] Add support for Visual Studio 2022 (#9577) * [v6-24] Add support for Visual Studio 2022 * Set the correct CXX_STANDARD_STRING 17 January 2022, 07:17:45 UTC
e596357 RooAddPdf: Avoid UB in checkObservables A RooAddPdf may have more PDFs than coefficients, in which case "the coefficient of the last PDF is calculated automatically from the condition that the sum of all coefficients has to be 1". In this case, the last call to "_coefList.at(i)" is supposed to return a nullptr because the index is out of range, and dereferencing it is undefined behavior which Clang 13 optimizes away, leading to crashes. Fixes #9547 (cherry picked from commit 1f3f0fdc0544087042e6289376094bf06b2d259f) 14 January 2022, 15:34:05 UTC
47eb37b [RF] Reset cached normalization sets if servers are redirected If a server is redirected, the cached normalization sets in `RooAbsPdf` and `RooAddPdf` might not point to the right observables anymore. We need to reset them. A unit test based on the code that originally unveiled this issue is also implemented. 13 January 2022, 15:48:09 UTC
3b59acd [dictgen] On macOS, use argv[0] to detect genreflex: _dyld_get_image_name() sporadically and only semi-reproducibly returns "rootcling" when asked by the genreflex binary. Maybe because both binaries are bitwise identical, and the image is shared - who knows. To prevent the rootcling argument parsing being active mistakenly for genreflex: genreflex: Not enough positional command line arguments specified! Must specify at least 2 positional arguments: See: genreflex --help make sure we get this right by not relying on _dyld_get_image_name() but on argv[0]. Call GetExePath() nonetheless, because we need it to set ROOTSYS. (cherry picked from commit 8ead2fd432f6088773214d2a6ba01b0c6a6e8934) 07 January 2022, 08:34:24 UTC
e810d08 GUI: removed erroneous delete from TGText::AsString(). Closes #7460. (cherry picked from commit 29c5501983ff3945478014000de06a1fd6ef619a) 06 January 2022, 10:53:46 UTC
463a8fc [github] Remove emailnotify workflow: not a suitable replacement. 06 January 2022, 10:51:34 UTC
e44002a fix openmp shadowing declaration of MnPrint print thread-local variable 17 December 2021, 09:57:22 UTC
back to top