[ic] [interchange] Fix code which assumes we already have a hashref

Mike Heins mike at heins.com
Fri Nov 11 22:43:18 UTC 2016

Here we see some of my thinking at the time when I was working very hard to
save cycles in places that are iterative. The simple check for a scalar,
instead of the 6 times more expensive hash member, was done before taking
the time to instantiate the hash. I believe that some of these things,
mostly resisting objects in code likely to be called hundreds of times per
page, kept Interchange fast enough to be competitive.

On Fri, Nov 11, 2016 at 3:15 PM, Jon Jensen <jon at endpoint.com> wrote:

> On Fri, 11 Nov 2016, David Christensen wrote:
> On 08/11/16 08:32, David Christensen wrote:
>>>>    Fix code which assumes we already have a hashref
>>>> +       $item = { 'code' => $item } unless ref $item;
>>>> +
>>>>         return $item->{mv_cache_price}
>>>>                 if ! $quantity and ref($item) and defined
>>>> $item->{mv_cache_price};
>>>> -       $item = { 'code' => $item } unless ref $item;
>>> This does not look like it was broken before, it certainly did not
>>> assume that we had a hashref as it specifically tested for it in the if
>>> statement.
>> True, I think I missed it ref() in that condition; had some across an
>> error in an installation related to dereferencing a string and thought I’d
>> found the solution.  I could revert or just leave it, as it doesn’t have
>> any practical difference; otherwise it’s just VCS noise at this point.
> If you want to leave it the new way, I think we should remove this now
> redundant check:
>     and ref($item)
> so that at least the net result of the version control churn is one less
> check of ref($item) in that same area. :)
> Jon
> --
> Jon Jensen
> End Point Corporation
> https://www.endpoint.com/
> _______________________________________________
> interchange-users mailing list
> interchange-users at icdevgroup.org
> http://www.icdevgroup.org/mailman/listinfo/interchange-users

The problem with Internet quotations is that many of them
are not genuine. -- Abraham Lincoln
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.icdevgroup.org/pipermail/interchange-users/attachments/20161111/791a9879/attachment.html>

More information about the interchange-users mailing list