Hi,

As a part of the channel-based plugin https://github.com/govim/govim test 
code I'm using popup_getoptions() to fetch the title of a popup created by 
the tests. To get the popup id:s I call "getbufinfo()".

What I have observed is that when I pass in a valid and existing popup id 
to "popup_getoptions(...)", I don't get any response and as a consequence 
the channel times out (if I understand it correctly). When I ask for a 
popup that doesn't exist I get a response immediately, and that is why I'm 
asking for advice here.

I had a quick shot at trying to create a small reproducible without any 
luck, and my best guess is that my failed attempt has to do with how 
scheduling works in govim (see related thread in 
https://groups.google.com/forum/#!searchin/vim_dev/paul$20jolly%7Csort:date/vim_dev/op_PKiE9iog/1C6_pfZZBgAJ
).

Any ideas of how I can debug this further would be highly appreciated.


- Pontus


This is the end of my channel log as it happens fwiw, the entire log can be 
seen at https://gist.github.com/leitzler/6c7d5371149fd5b90a0a19ad2e6828ae:

'

  2.471613 : SafeState: back to waiting, triggering SafeStateAgain

  2.484205 RECV on 0(sock): '[0,[55,"call","s:schedule",5]]

'

  2.484215 : looking for messages on channels

  2.484250 on 0: Getting JSON message 0

  2.484261 on 0: Invoking channel callback <SNR>17_define

  2.484455 : minVimSafeState: running work immediately because state is 'c'

  2.484513 SEND on 0(sock): '[62,["schedule",5]]

'

  2.484533 on 0: Blocking read JSON for id 62

  2.484541 : looking for messages on channels

  2.484548 on 0: Waiting for up to 30000 msec

  2.484746 RECV on 0(sock): '[0,[56,"expr","GOVIM_internal_DumpPopups()"]]

'

  2.484757 : looking for messages on channels

  2.484770 on 0: Getting JSON message 0

  2.484777 on 0: Invoking channel callback <SNR>17_define

  2.484933 SEND on 0(sock): 
'[63,["function","function:GOVIM_internal_DumpPopups",[]]]

'

  2.484960 on 0: Blocking read JSON for id 63

  2.484975 : looking for messages on channels

  2.484983 on 0: Waiting for up to 30000 msec

  2.485197 RECV on 0(sock): '[0,[57,"expr","getbufinfo()"]]

'

  2.485222 : looking for messages on channels

  2.485240 on 0: Getting JSON message 0

  2.485249 on 0: Invoking channel callback <SNR>17_define

  2.485443 SEND on 0(sock): 
'[64,["callback",57,["",[{"lnum":6,"bufnr":1,"variables":{"did_ftplugin":1,"undo_ftplugin":"setl
 
fo< com< 
cms<","changedtick":4,"current_syntax":"go","did_indent":1},"popups":[],"signs":[{"lnum":6,"id":1,"name":"govimerr","priority":10,"group":"govim"}],"name":"/private/var/folders/xm/ls208xd174v95pgd20rn_qbh0000gn/T/go-test-script063236289/script-suggested_fixes/main.go","changed":0,"loaded":1,"windows":[1000],"hidden":0,"listed":1,"changedtick":4},{"lnum":0,"bufnr":2,"variables":{"changedtick":1},"popups":[1001],"signs":[{"lnum":1,"id":1,"name":"popup-1001","priority":10,"group":"popupmenu"}],"name":"","changed":0,"loaded":1,"windows":[],"hidden":0,"listed":0,"changedtick":1}]]]]

'

  2.485480 : looking for messages on channels

  2.485490 on 0: Waiting for up to 30000 msec

  2.485823 RECV on 0(sock): '[0,[58,"expr","popup_getoptions(1001)"]]

'

  2.485837 : looking for messages on channels

  2.485857 on 0: Getting JSON message 0

  2.485872 on 0: Invoking channel callback <SNR>17_define

  2.486013 SEND on 0(sock): ''

  2.486037 : looking for messages on channels

  2.486042 on 0: Waiting for up to 30000 msec

 32.488599 on 0: Timed out on id 63

 32.488776 SEND on 0(sock): '[66,["callback",56,["Caught 'Vim(call):E474: 
Invalid argument' in function 
<SNR>17_define[51]..<SNR>17_schedule[22]..<SNR>17_drainScheduleBacklog[14]..<SNR>17_ch_evalexpr[2]..<SNR>17_define[46]..GOVIM_internal_DumpPopups[3]..<SNR>17_callbackFunction[2]..<SNR>17_ch_evalexpr[2]..<SNR>17_define,
 
line 64"]]]

'

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/e58c24f9-8285-47e5-a49d-afe55a0fed1f%40googlegroups.com.

Raspunde prin e-mail lui