So, we now have < 200 non-(intentional/false positive) warnings
remaining in coverity from an original count of approx 11 thousand or
thereabouts.
the biggest remaining categories are...
50 "Tainted scalars"
23 "Uncaught exceptions"
19 "Unchecked returns"
19 "divide by zeros"
14 "Swapped arguments"
and a handful in a bunch of various other categories.
I reckon practically all the "swapped arguments" are ok except maybe for
1242508. (caolanm->quikee: in 1b23e46051d8cc7c01fd8b4d0ea51bfec145db8e
there is..
- pWriteAcc->SetPixel( i, x, aResultColor );
+ pWriteAcc->SetPixel( x, y, aResultColor );
and SetPixel takes args named x, y. so are those arguments definitely
not the wrong way around or is it actually a real detected problem?)
Nearly all the other "swapped arguments" are around column/rows possibly
being swapped, especially in calc, e.g. a lot of them are like 1242513
bChartRowAsHdr passed to bCol on line 3176
ScCellRangesBase::setRowDescriptions. I assume those are ok ?
There are also 4 remaining (from originally 1842) "uninitialized members
in ctors", all from calc, where there are quite a few members and only
some of them get initialized directly in the ctor. It'd be good to get
someone from calc to have a once-over on those and see if they are
intentionally uninitialized for e.g. performance reasons.
So in general, we have only a very small count of remaining warnings to
be decided about one way or the other, logging into coverity and
choosing "outstanding defects" and sorting by file and having a quick
scan through whatever modules you consider "yours" especially for
"swapped arguments" and "unchecked returns" to see if any of them need
fixing or can be dismissed as "intentional".
FWIW coverity "Unchecked returns" can be silenced in code with foo() ->
(void)foo() as is typical for some compilers' similar compile-time
warnings.
C.
Context
- coverity warnings update, < 200 · Caolán McNamara
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.