[Libreoffice] [Patch] Make ScVbaWorksheet work with sheet local DBRanges

Markus Mohrhard markus.mohrhard at googlemail.com
Fri Apr 22 10:29:38 PDT 2011


Hello Kohei,

yes you're right. This part was copied from another method and I didn't
notice it. But I don't think that you must check for ScDocShell, because the
whole class is build without any check for it.

Should I send a reworked patch? There are just the two occurences of this
check. Only the check if(pDBData) is important in this context.

Regards,
Markus

2011/4/22 Kohei Yoshida <kyoshida at novell.com>

> On Thu, 2011-04-21 at 22:34 +0200, Markus Mohrhard wrote:
> > Hello,
> >
> > here a short patch that reworks the
> > ScVbaWorksheet::getAutoFilterMode/setAutoFilterMode methods.
>
> Hi Markus,
>
> Just a minor thing.  In ScVbaWorksheet::setAutoFilterMode(), you do
>
> +        if (bAutoFilterMode && pDoc)
>
> but you've already de-referenced pDoc before that line
>
> +    ScDBData* pDBData = pDoc->GetAnonymousDBData(getSheetID());
>
> so it's probably pointless to check for pDoc pointer value in that if
> statement.
>
> Taking this a step further, if you want to check the existence of the
> document model to be extra safe, it's better to check the value of
> pDocShell.  ScDocument instance is a concrete member of ScDocShell, so
> if the ScDocShell instance exists, ScDocument that returns from it is
> pretty much guaranteed to exist.
>
> Other than that, the rest looks good to me, but I'd like Noel's blessing
> on the VBA part.
>
> Kohei
>
> --
> Kohei Yoshida, LibreOffice hacker, Calc
> <kyoshida at novell.com>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20110422/1b923d85/attachment.html>


More information about the LibreOffice mailing list