[O] bug#19914: 25.0.50; `org-store-link' invokes function to add to `org-store-link-functions' twice

2017-12-01 Thread Nicolas Goaziou
Nicolas Goaziou  writes:

> Hello,
>
> Drew Adams  writes:
>
>>> This means that it will have done its thing TWICE: once just to check
>>> whether it should/could do its thing and another time so that it does
>>> its thing.
>>
>> Also, the doc of `org-store-link-functions' says nothing about the
>> function being called twice.  It says only:
>>
>> "Each function should check if it is responsible for creating
>>  this link (for example by looking at the major mode).
>>  If not, it must exit and return nil.
>>  If yes, it should return a non-nil value after a calling
>>  `org-store-link-props' with a list of properties and values."
>>
>> (And "a calling" is a typo - it should be "calling".)
>>
>> This doc is essentially a spec telling you what a function for this
>> list should do.  From the doc, its purpose is to (a) check whether
>> it should call `org-store-link-props' and (b) if so, call it and
>> return non-nil, else return nil (without calling it).
>>
>> Nothing suggests that the function, if invoked to define a link,
>> will be invoked twice: once for (a) (even though (b) will also be
>> done then) and a second time for (b).
>
> This function no longer invokes twice the function used to create the
> link.

Closing this bug.





[O] bug#19914: 25.0.50; `org-store-link' invokes function to add to `org-store-link-functions' twice

2017-12-01 Thread Nicolas Goaziou
Hello,

Drew Adams  writes:

>> This means that it will have done its thing TWICE: once just to check
>> whether it should/could do its thing and another time so that it does
>> its thing.
>
> Also, the doc of `org-store-link-functions' says nothing about the
> function being called twice.  It says only:
>
> "Each function should check if it is responsible for creating
>  this link (for example by looking at the major mode).
>  If not, it must exit and return nil.
>  If yes, it should return a non-nil value after a calling
>  `org-store-link-props' with a list of properties and values."
>
> (And "a calling" is a typo - it should be "calling".)
>
> This doc is essentially a spec telling you what a function for this
> list should do.  From the doc, its purpose is to (a) check whether
> it should call `org-store-link-props' and (b) if so, call it and
> return non-nil, else return nil (without calling it).
>
> Nothing suggests that the function, if invoked to define a link,
> will be invoked twice: once for (a) (even though (b) will also be
> done then) and a second time for (b).

This function no longer invokes twice the function used to create the
link.

Thank you.

Regrads,

-- 
Nicolas Goaziou0x80A93738