summaryrefslogtreecommitdiff
path: root/solenv/gdb
AgeCommit message (Collapse)Author
2020-10-09Adapt solenv/gdb/ to old PythonStephan Bergmann
After 4a899a5f8a72ea29a6919316afe3627de9f33e95 "Fix Python deprecation warnings"e.g. <https://ci.libreoffice.org/job/gerrit_linux_clang_dbgutil/70542/console> started to complain > Traceback (most recent call last): > File "/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/instdir/program/libuno_sal.so.3-gdb.py", line 23, in <module> > module = importlib.import_module('libreoffice.' + mod) > File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module > __import__(name) > File "/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/solenv/gdb/libreoffice/sal.py", line 14, in <module> > from libreoffice.util import printing > File "/home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/solenv/gdb/libreoffice/util/printing.py", line 10, in <module> > from collections.abc import Mapping > ImportError: No module named abc etc. when lode's bin/kill-wrapper calls gdb to obtain backtraces of hung processes. Change-Id: I4fe6c6fa97bbb455a071dd28e5c1ab33f2337a0f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104119 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-09-24Fix Python deprecation warningsStephan Bergmann
I noticed these "DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working" now when running tests with CPPUNITTRACE='gdb --args' on Fedora 32. Change-Id: If263dacb9df5c1fffd2be2418e13e69b96070c77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103294 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-09-12Replace remaining uses of sal_CharJulien Nabet
+ remove sal_Char check on compilerplugins Change-Id: I0f7da14e620f0c3d031d038aa8345ba4080fb3e9 Change-Id: Ia6dba4f27b47bc9e0c89159182ad80a5aee17166 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102499 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-07-13Don't rely on Python's treatment of unrecognized escape sequencesMike Kaganski
According to [1]: > Changed in version 3.6: Unrecognized escape sequences produce a DeprecationWarning. > In a future Python version they will be a SyntaxWarning and eventually a SyntaxError. [1] https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals Change-Id: Ia4f79f17ccb121f423f35b1e1306d5ae285e8762 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/98321 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-02-25six: upgrade release to 1.14.0 used by gdbJens Carl
Change-Id: I450f5cd83e116baab8d1750a9ed7def002e234c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89317 Tested-by: Jenkins Reviewed-by: Jens Carl <j.carl43@gmx.de>
2019-06-25remove Fraction pretty-printerNoel Grandin
no longer necessary after commit 31589bf0239679d73417902655045c48c4868016 Date: Mon Jun 24 15:02:55 2019 +0200 tdf#94677 Calc is slow opening large CSV, improve tools::Fraction Change-Id: I1c9ee043a51216f7005bf8a4bf60bb4b4e39ab61
2019-05-28six: upgrade release to 1.12.0 used by gdbJens Carl
Change-Id: I816ccde944903e0ff3ac23e92632056a3192b060 Reviewed-on: https://gerrit.libreoffice.org/73069 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-05-16Make gdb autoload template more pythonicJens Carl
Replace vim modeline with Python specific one to avoid problems with tabs and spaces, and also make code more pythonic. Change-Id: Ia0959787ceea740b5c97f500c60ef423fbed0651 Reviewed-on: https://gerrit.libreoffice.org/72375 Tested-by: Jenkins Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
2019-04-21fix gdb helper for ColorNoel Grandin
after commit d487d6e082bc7ce652217578ffd37397a59cc3ca Date: Sat Apr 20 11:06:11 2019 +0900 rework Color to have R,G,B,A public variables Change-Id: I0ebbb071d2fad43bd49ef8421804657dfdfc446d Reviewed-on: https://gerrit.libreoffice.org/71041 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2019-04-13Fix Python exception in gdb pretty-printer basegfxJens Carl
Add single quotes around the namespace::class construct, when calling gdb.parse_and_eval(), otherwise this exception is thrown: "Python Exception <class 'gdb.error'> A syntax error in expression, near `)xxx)->count($'.:" The reason is a possible conflict with '::' referring a static variable (https://sourceware.org/gdb/onlinedocs/gdb/Variables.html). Also improved the B2DPolyPolygonPrinter::children method to avoid a segmentation fault, when accessing member m_value. Change-Id: I1c15a4b786e1e374c67ace445d28c1ce210a4c04 Reviewed-on: https://gerrit.libreoffice.org/70537 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-10-25fix gdb pretty printingNoel Grandin
revert part of commit 6f50961e69406a17d6ec998956a6b33208b1001b remove more rtl::OUString and OString prefixes Change-Id: I026f8175c855a20bab54940f6235bca5c91ddbab
2018-10-24remove more rtl::OUString and OString prefixesNoel Grandin
which seem to have snuck back in since the great rounds of removals. Change-Id: I85f7f5f4801c0b48dae8b50f51f83595b286d6a1 Reviewed-on: https://gerrit.libreoffice.org/62229 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2018-04-04Fix SfxItemSet pretty printer after some uniqueptr conversionsKatarina Behrens
just whyyyyyyy are you people doing this, why do you gratuitously break things others rely upon for productivity?!?? I don't give a F about uniqueptrs, all I want is to be able to print this bloody SfxItemSet. It's frustrating AF Change-Id: I0b6110c1806c31a3c098fb9dc73883047191c7f9 Reviewed-on: https://gerrit.libreoffice.org/52362 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
2018-03-14fix pretty printing of Fraction betterNoel Grandin
work-around gdb bug, and deal with different representations of std::unique_ptr in different versions of libc++. Change-Id: I02a1f49c07dbcd70e13ef6be48e20b510bf5e3fa
2018-03-14Adapt FractionPrinterStephan Bergmann
...to 048a32d903c8cc81a8836c7c7209b92e0bfd6cd7 "use unique_ptr for pImpl in tools/", exploiting intimate knowledge of libstdc++ internals as was already done in 51bb68928933bf5d72efb9193f1be6af6e72c80f "fix BigPtrArray pretty printer". Due to <https://sourceware.org/bugzilla/show_bug.cgi?id=22968> "ptype does not find inner C++ class type without -readnow", at least for me only works when gdb is invoked with -readnow. Change-Id: I365733f3c661eea2f19a9b85015aa5d50e63e6a4
2017-11-08gdb pretty-printers: avoid segfauls in B2DPolygonPrinterMichael Stahl
gdb 8.0.1 tends to sefault while evaluating the getB2DPoint() calls; it passes some obviously wrong index instead of 0. Also, add a children method to B2DPolyPolygonPrinter. Change-Id: Ifbf52ad384d1f60b26ee95f87405eff2c6f2388a
2017-09-29gdb pretty-printers: fix StringPrinterHelper for gdb 8.0Michael Stahl
Latest gdb release "lazy_string" validates the array size: Traceback (most recent call last): File "/work/lo/master/solenv/gdb/libreoffice/util/string.py", line 29, in to_string return self.make_string(data, self.encoding, len) File "/work/lo/master/solenv/gdb/libreoffice/util/string.py", line 66, in make_string return data.lazy_string(encoding, length) gdb.error: Length is larger than array size. rtl_uString has "sal_Unicode buffer[1];", which is a lie as the real size is the same as "length". Taking the address of "buffer" appears to avoid the exception. Change-Id: I85710b1adfae584ba09c8d517e9b49b290e79d8a
2017-09-15solenv: fix GDB pretty-printers for SwNodes yet againMichael Stahl
Change-Id: I1eb1efedb98979b692874ae0ec48120cb5a38188
2017-07-29Fix no longer valid commentPranav Kant
This was changed in d72aad218c9737fb19d1a835b03c13b7107a96c0 Change-Id: Ie93f603c82669ca612fbf9635a62c50e63702a85
2017-07-28Fix scheduler GDB pretty printerJan-Marek Glogowski
mbDelete is gone, as we simply check for mpTask. Change-Id: I9d451f2445fb6b978d177b45d75abde2595c5fac
2017-07-13fix BigPtrArray pretty printerNoel Grandin
after commit 64079184cc06444e9dfdb55a5c66829e929d4a59 "improve useuniqueptr loplugin to find arrays" Change-Id: I29841af65fcb0c1f92e52d9aeee164328bbb4663
2017-07-13Run Idle tasks immediatlyJan-Marek Glogowski
There is really no reason to wait a millisecond for an idle. Change-Id: I7665d5f2e7d6ba3e01290a692bbc8e42c36b9986
2017-07-13Introduce a scheduler stackJan-Marek Glogowski
While the stack removes all invoked tasks from the queue, which actively removes it from scheduling, it also helps to faster handle nested calls, as we don't have to look for the previous position to move the task to the end of the queue for the round robin. Change-Id: I358cf2492e9630f67685a2b780509edb56691830
2017-07-07re-add some gdb BigPtrArray pretty printingNoel Grandin
After commit c6902761d797253cda8b3f71f102c66108585e24 "Revert "use std::vector in BigPtrArray"" <mst_> noelgrandin: you reverted both gdb changes but only one sw change? <noelgrandin> mst_, I thought your gdb change only appliled to the std::vector? <mst_> noelgrandin: there was another std::something or other change there, one was mvInfo and the other mvData <noelgrandin> mst_, sigh, will fix that Change-Id: I3059d29b1a559eb3077f5d713be011e15e887ee0
2017-07-07Revert "use std::vector in BigPtrArray"Noel Grandin
which is causing crashes in the crashtesting in ooo119635-3.docx and ooo119568-2.docx It is definitely some kind of use-after-free error, but the compress and delete logic for BigPtrArray is too hairy for me to debug right now. This reverts commit 1eee0abd459a508a6dcf9e71cbf2c1be3725faa7. Also revert commit 4f743419a04375160437a910254c45dea396f70d "gdb pretty-printers: fix BigPtrArrayPrinter after recent std::isation" Change-Id: Id870876432a060f9347aafb43bf0df692ea24464 Reviewed-on: https://gerrit.libreoffice.org/39684 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2017-06-28gdb pretty-printers: fix BigPtrArrayPrinter after recent std::isationMichael Stahl
Change-Id: Ie98f080fbb0efb807dcb2fb7893811f68e831a8f
2017-04-04Missing str(...) when an arg is itself a css::uno::Sequence<...>Stephan Bergmann
Change-Id: I54529e7086014a2feba89eb73f3b368d36f758b8
2017-01-23Revert "used std::map in SfxItemSet"Noel Grandin
This reverts commit 2757ee9fe610e253e4ccc37423fa420004d0f388. Besides causing a performance regression, I now notice that there is code in SW that relies on iterating over two different SfxItemSet's in parallel, and assumes that missing items are returned as nullptr, which is not the case for my std::map based change. Change-Id: I2b1110350fe4c4b74e5508558e9661ef1e1a103e
2017-01-17Change Idle to be a Timer subclassJan-Marek Glogowski
Drops a lot of duplicated code, as Idle is just a convenience class for instant, mostly low priority timers. Change-Id: I847592e92e86d15ab1cab168bf0e667322e48048
2017-01-17Refactor Scheduler to add Task classJan-Marek Glogowski
Moves all the "task-specific" stuff into a Task class and just keeps the "real" static Scheduler functions in the original Scheduler class. Change-Id: I9eb02d46e2bcf1abb06af5bab1fa0ee734d1984c
2017-01-17tdf#97087 GDB pretty print the Scheduler task listJan-Marek Glogowski
In addition to the GDB pretty printer, this annotates a lot more Timers and Idles. Change-Id: I5b93fab02161b23bb753e65ef92643a04fb0789c
2017-01-17used std::map in SfxItemSetNoel Grandin
instead of naked array SfxItemIter ended up needing to take copies of stuff because various code likes to iterate over the items and delete items inside the loop. The gdb pretty printer is no longer quite as pretty as it was before, but it still prints useful info. Change-Id: I59b07ea42f6b1c74798a15402970b9dbd8233dbe
2016-12-20gdb pretty printers: fix the SwXTextCursor::Impl one even moreMichael Stahl
Turns out that commit 30f3315d52df22716c086836c41465a6c4cb98b5 has removed the SwClient there a long time ago, and the SwUnoCrsr was also renamed... Change-Id: I92932130c5adbea530c39557932efce70c9f75e7
2016-12-20gdb pretty printers: fix BigPtrArray printer for member renameMichael Stahl
Change-Id: Ia9da0c0931a01b2c99c24420a9ba603b47a711c1
2016-12-20gdb pretty printers: fix SwXTextCursor::Impl printer for SwClient renameMichael Stahl
Change-Id: Ief136f57ce60bde1faa0603961aa775967621fbf
2016-12-20gdb pretty printers: fix SwPaM printer for Ring member renamingMichael Stahl
Change-Id: I605e4e972468165e7f5d21681b6e7eeb228dfdc9
2016-12-14solenv: adapt SwPositionPrinter to BigPtrEntry renamingMichael Stahl
Change-Id: I096211333c563b501627fef0dbdec8c3c98d501a
2016-10-23Fix typosAndrea Gelmini
Change-Id: Ib7b17f85c7b6a1937c3f6e1617ceec58074643b4 Reviewed-on: https://gerrit.libreoffice.org/30040 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: jan iversen <jani@documentfoundation.org> Tested-by: jan iversen <jani@documentfoundation.org>
2016-07-08Resolves: tdf#100452 class Date full (BCE,CE) proleptic Gregorian calendarEike Rathke
... implementing signed years with year 0 gap. Date(31,12,-1) last day BCE Date(1,1,1) first day CE New class Date member functions: * AddYears(sal_Int16) to be used instead of aDate.SetYear(aDate.GetYear()+sal_Int16) to handle year 0 gap. * convenience GetNextYear() to be used insted of GetYear()+1 * convenience GetPrevYear() to be used insted of GetYear()-1 * AddMonths(sal_Int32) * operator=(const css::util::Date&) New class DateTime member functions: * operator=(const css::util::DateTime&) Made some conversion ctors explicit, specifically Date(sal_Int32) Adapted hopefully all places that used a sal_uInt16 year to use sal_Int16 where appropriate. Eliminated some quirks in date handling found on the fly. Added era handling to i18npool icu calendar setting interface, which missing was responsible for 0001-01-01 entered in Calc being set as -0001-01-01, hence subtracting one day resulted in -0002-12-31. Change-Id: I77b39fba9599ebd5067d7864f6c9ebe01f6f578f Reviewed-on: https://gerrit.libreoffice.org/27049 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins <ci@libreoffice.org>
2016-06-16Improve output of UnoAnyPrinterStephan Bergmann
Change-Id: I1461264fe7f951c9ecec777c6217d0acfb7e4254
2016-01-02GDB: pretty-print more sw::mark::MarkBase classesJan-Marek Glogowski
Generalize the UnoMark pretty printer to actually print many objects inheriting from sw::mark::MarkBase. Also adds the mark name to the output. Change-Id: Idaec06ba448702ee3a47b474736df954646c0300
2015-12-07loplugin:mergeclasses OOXMLPropertyImpl into OOXMLPropertyNoel Grandin
Change-Id: I1447cfc76c529332450c90a21b6525d3103fe852
2015-12-07loplugin:mergeclasses, merge OOXMLPropertyImpl into OOXMLPropertyNoel Grandin
Change-Id: I73eb7e664c0a53f135c06c3d8ea450bd9493c780
2015-07-30gdb pretty printers for boost can't iterate with Python 3Michael Stahl
Change-Id: Ie2d1cb7312de6f14a5c6de81eefd7a00be6f75c0
2015-07-27gdb pretty printer for SwNodes fails on Python 3 due to "unicode"Michael Stahl
Change-Id: I8e4983a91d4f97a2a20fbeed89d4e0f186c35fad
2015-06-15sw: prefix members of SwNodeIndexMichael Stahl
Change-Id: Ia31c7a91bf78b967e70d288374d9e21439c99221
2015-05-26gdb: SwTxtNode -> SwTextNodeMiklos Vajna
Fixes the unexpected ' ~DeletedNode' lines in the output. Change-Id: I1f59c2cd986addd08e632d0bc1cc53b33048db77
2015-04-08solenv: there are no more SvArrays in need of pretty printingMichael Stahl
Change-Id: Ic4d59228f3295e8400bcacf637ff4def7669b775
2015-04-08solenv: add GDB pretty printer for SfxItemSetMichael Stahl
Change-Id: Ibd74c58efa7f1a24de409820655fb98b4fc13df3
2015-01-29gdb pretty printers: fix the sw::mark::IMark and SwModify printersMichael Stahl
If these are called on a value that is of a different type than what is checked in the children() method, nothing is printed except exceptions about non-existent _iterator. GDB can figure out the dynamic type itself and call the pretty printer only if it's actually a UnoMark so don't register it for IMark. Same thing for SwUnoCrsr, there is already a class for it. Change-Id: I00238f1e3f01741d607eec9d47671302b858b965