// Copyright 2017-2025 WIT.COM Inc. All rights reserved. // Use of this source code is governed by the GPL 3.0 package main import ( "go.wit.com/gui" "go.wit.com/lib/protobuf/gitpb" "go.wit.com/log" ) // callback for bash autocomplete to shutdown // forge properly before exiting back to the shell // hopefully will allow the GUI plugins to unload properly func (args) Exit() { gui.UnloadToolkits() resetTerminalTitle() if argv.Verbose { log.Info("argv.Exit() got to forge.Exit()") } // me.forge.SetConfigSave(configSave) if err := me.forge.Close(); err != nil { log.Info("ABNORMAL END", err) } } func okExit(thing string) { me.sh.GoodExit(thing) } func badExit(err error) { me.sh.BadExit("forge failed", err) } func newBadExit(msg string, err error) { me.sh.BadExit(msg, err) } func badRepoExit(repo *gitpb.Repo, err error) { s := log.Sprintf("%s FAILED: %v", repo.GetNamespace(), err) me.sh.BadExit(s, err) }