View: fix pointer comparison in notifyTitle()
Curently since the struct is semantically passed by value not reference, there is no guarantee that the `seat_node.data.focused.view == &self` comparison will work as intended. Since updating to Zig 0.10.0, it seems this latent bug has now manifested and the focused view title is no longer sent to the client when it changes. Fix this by taking the view argument by constant pointer instead.
This commit is contained in:
		
				
					committed by
					
						 Isaac Freund
						Isaac Freund
					
				
			
			
				
	
			
			
			
						parent
						
							6fdfb7134f
						
					
				
				
					commit
					8a3530b8a3
				
			| @ -551,14 +551,14 @@ pub fn unmap(self: *Self) void { | ||||
|     server.root.startTransaction(); | ||||
| } | ||||
|  | ||||
| pub fn notifyTitle(self: Self) void { | ||||
| pub fn notifyTitle(self: *const Self) void { | ||||
|     if (self.foreign_toplevel_handle) |handle| { | ||||
|         if (self.getTitle()) |s| handle.setTitle(s); | ||||
|     } | ||||
|     // Send title to all status listeners attached to a seat which focuses this view | ||||
|     var seat_it = server.input_manager.seats.first; | ||||
|     while (seat_it) |seat_node| : (seat_it = seat_node.next) { | ||||
|         if (seat_node.data.focused == .view and seat_node.data.focused.view == &self) { | ||||
|         if (seat_node.data.focused == .view and seat_node.data.focused.view == self) { | ||||
|             var client_it = seat_node.data.status_trackers.first; | ||||
|             while (client_it) |client_node| : (client_it = client_node.next) { | ||||
|                 client_node.data.sendFocusedView(); | ||||
|  | ||||
		Reference in New Issue
	
	Block a user