Pickup / notify with wrong display

Hello Asterisk peoples,

I have an Asterisk v1.6.2.17 and the pickup is not working 100% correctly.
Scenario: 184 calls 185 and 177 try to pickup
The LEDs are flashing on 177 and pickup works, after changing the type of the function key from “BLF” (is written in the Asteriskdocu but doesn’t work) to “extension” (which works on our old Asterisk 1.2) and appending the pickup extension *8 i.e. “185|*8”.

Problem is the display on 177: “185 -> 185” which is definitive wrong. It should be "184 -> 185"
I achieve that with a litte change in channels/chan_sip.c:
local_display, local_target, local_target, mto, mto); ->
local_display, local_target, local_target, mfrom, mto);
It is “185 -> 177” which is also wrong.
So the line in chan_sip.c should be
local_display, local_target, local_target, <?>, mfrom);
and then i have “177 -> 185” but 177 should be 184.

Then say why and I try to explain it better.
If not please help me :neutral_face:

I think to crawl in the code is not the best way and there are some pickup patches in the internet. But every people on the world have his own pickup patch o_O If you have an idea how can I find the “original” or right patch for me?

Thanks in advance.

Philippe Haug