Repository: syncthing/syncthing (language: go)

Issue:
v1.20.0-rc.1: `panic: interface conversion: interface {} is map[string]string, not map[string]interface {}`
```
Panic at 2022-04-15T09:27:40+02:00
panic: interface conversion: interface {} is map[string]string, not map[string]interface {} [recovered]
	panic: interface conversion: interface {} is map[string]string, not map[string]interface {}

goroutine 72 [running]:
github.com/thejerf/suture/v4.(*Supervisor).runService.func2.2()
	github.com/thejerf/suture/v4@v4.0.2/supervisor.go:561 +0xbc
panic({0xde2300, 0xc01c339890})
	runtime/panic.go:838 +0x207
github.com/syncthing/syncthing/lib/model.(*folderSummaryService).processUpdate(0xc0001377c0, {0x141, 0x168, {0xc08e657b130f9ed7, 0x74fc7d487d, 0x1828420}, 0x8000000, {0xdd1a40, 0xc01c339860}})
	github.com/syncthing/syncthing/lib/model/folder_summary.go:309 +0x557
github.com/syncthing/syncthing/lib/model.(*folderSummaryService).listenForUpdates(0xc0001377c0, {0x1224a58, 0xc0009dd0c0})
	github.com/syncthing/syncthing/lib/model/folder_summary.go:236 +0x115
github.com/syncthing/syncthing/lib/svcutil.(*service).Serve(0xc00040ed80, {0x1224a58, 0xc0009dd0c0})
	github.com/syncthing/syncthing/lib/svcutil/svcutil.go:125 +0x92
github.com/thejerf/suture/v4.(*Supervisor).runService.func2()
	github.com/thejerf/suture/v4@v4.0.2/supervisor.go:565 +0xec
created by github.com/thejerf/suture/v4.(*Supervisor).runService
	github.com/thejerf/suture/v4@v4.0.2/supervisor.go:539 +0x1d5
```


Discussion / hints:

Fix patch:
diff --git a/lib/model/folder.go b/lib/model/folder.go
index 2e90f3536e5..96c07bad783 100644
--- a/lib/model/folder.go
+++ b/lib/model/folder.go
@@ -1065,7 +1065,7 @@ func (f *folder) setWatchError(err error, nextTryIn time.Duration) {
 	f.watchErr = err
 	f.watchMut.Unlock()
 	if err != prevErr {
-		data := map[string]string{
+		data := map[string]interface{}{
 			"folder": f.ID,
 		}
 		if prevErr != nil {


Test patch: