aboutsummaryrefslogtreecommitdiff
path: root/src/command/exit.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/command/exit.zig')
-rw-r--r--src/command/exit.zig12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/command/exit.zig b/src/command/exit.zig
index 799b12c..a21e4f3 100644
--- a/src/command/exit.zig
+++ b/src/command/exit.zig
@@ -15,12 +15,20 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
+const std = @import("std");
+
const c = @import("../c.zig");
-const Arg = @import("../Command.zig").Arg;
+const Error = @import("../command.zig").Error;
const Seat = @import("../Seat.zig");
/// Exit the compositor, terminating the wayland session.
-pub fn exit(seat: *Seat, arg: Arg) void {
+pub fn exit(
+ allocator: *std.mem.Allocator,
+ seat: *Seat,
+ args: []const []const u8,
+ failure_message: *[]const u8,
+) Error!void {
+ if (args.len > 1) return Error.TooManyArguments;
c.wl_display_terminate(seat.input_manager.server.wl_display);
}