Try to fix inotify again
							parent
							
								
									7cd21081af
								
							
						
					
					
						commit
						93ebbfb7e4
					
				| 
						 | 
					@ -24,8 +24,10 @@ TUPLE: inotify watches ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: <inotify> ( -- port/f )
 | 
					: <inotify> ( -- port/f )
 | 
				
			||||||
    H{ } clone
 | 
					    H{ } clone
 | 
				
			||||||
    inotify_init [ io-error ] [ inotify <buffered-port> ] bi
 | 
					    inotify_init dup 0 < [ 2drop f ] [
 | 
				
			||||||
    { set-inotify-watches set-delegate } inotify construct ;
 | 
					        inotify <buffered-port>
 | 
				
			||||||
 | 
					        { set-inotify-watches set-delegate } inotify construct
 | 
				
			||||||
 | 
					    ] if ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: inotify-fd inotify get-global handle>> ;
 | 
					: inotify-fd inotify get-global handle>> ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -109,9 +111,12 @@ TUPLE: inotify-task ;
 | 
				
			||||||
    f inotify-task <input-task> ;
 | 
					    f inotify-task <input-task> ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
: init-inotify ( mx -- )
 | 
					: init-inotify ( mx -- )
 | 
				
			||||||
    <inotify>
 | 
					    <inotify> dup [
 | 
				
			||||||
    dup inotify set-global
 | 
					        dup inotify set-global
 | 
				
			||||||
    <inotify-task> swap register-io-task ;
 | 
					        <inotify-task> swap register-io-task
 | 
				
			||||||
 | 
					    ] [
 | 
				
			||||||
 | 
					        2drop
 | 
				
			||||||
 | 
					    ] if ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
M: inotify-task do-io-task ( task -- )
 | 
					M: inotify-task do-io-task ( task -- )
 | 
				
			||||||
    io-task-port read-notifications f ;
 | 
					    io-task-port read-notifications f ;
 | 
				
			||||||
| 
						 | 
					@ -119,7 +124,7 @@ M: inotify-task do-io-task ( task -- )
 | 
				
			||||||
M: linux-io init-io ( -- )
 | 
					M: linux-io init-io ( -- )
 | 
				
			||||||
    <select-mx>
 | 
					    <select-mx>
 | 
				
			||||||
    [ mx set-global ]
 | 
					    [ mx set-global ]
 | 
				
			||||||
    [ [ init-inotify ] curry ignore-errors ] bi ;
 | 
					    [ init-inotify ] bi ;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
T{ linux-io } set-io-backend
 | 
					T{ linux-io } set-io-backend
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue