Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
EVENT_PIPE: fix invalid json
Baptiste Daroussin committed 1 month ago
commit bac49fb591b032d590bc91a2c428bc3b50e98755
parent 0bd96a4
1 file changed +7 -5
modified libpkg/pkg_event.c
@@ -135,19 +135,21 @@ pipeevent(struct pkg_event *ev)
		    "\"pkgversion\": \"%v\""
		    "}}", ev->e_extract_finished.pkg, ev->e_extract_finished.pkg);
		break;
-
	case PKG_EVENT_INSTALL_FINISHED:
+
	case PKG_EVENT_INSTALL_FINISHED: {
+
		char *msgjson = pkg_has_message(ev->e_install_finished.pkg) ?
+
		    pkg_message_to_str(ev->e_install_finished.pkg) : NULL;
		pkg_fprintf(msg->fp, "{ \"type\": \"INFO_INSTALL_FINISHED\", "
		    "\"data\": { "
		    "\"pkgname\": \"%n\", "
		    "\"pkgversion\": \"%v\", "
-
		    "\"message\": \"%S\""
+
		    "\"message\": %S"
		    "}}",
		    ev->e_install_finished.pkg,
		    ev->e_install_finished.pkg,
-
			pkg_has_message(ev->e_install_finished.pkg) ?
-
				pkg_message_to_str(ev->e_install_finished.pkg) :
-
				"");
+
		    msgjson != NULL ? msgjson : "\"\"");
+
		free(msgjson);
		break;
+
	}
	case PKG_EVENT_INTEGRITYCHECK_BEGIN:
		fputs("{ \"type\": \"INFO_INTEGRITYCHECK_BEGIN\", "
		    "\"data\": {}}", msg->fp);