From 2c585d62a4ebbb52175b8fd8697458ae1c3b2937 Mon Sep 17 00:00:00 2001
From: 6543 <6543@obermui.de>
Date: Tue, 4 Apr 2023 05:39:47 +0200
Subject: [PATCH] User/Org Feed render description as per web (#23887)

User descriptions should be rendered so that links and other markup
appear correct in RSS feeds.
---
 build.go                    |  1 -
 routers/web/feed/profile.go | 16 +++++++++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/build.go b/build.go
index d2e724a7f7..234579b514 100644
--- a/build.go
+++ b/build.go
@@ -1,7 +1,6 @@
 // Copyright 2020 The Gitea Authors. All rights reserved.
 // SPDX-License-Identifier: MIT
 
-
 //go:build vendor
 
 package main
diff --git a/routers/web/feed/profile.go b/routers/web/feed/profile.go
index b9dda2fc10..ce86727e24 100644
--- a/routers/web/feed/profile.go
+++ b/routers/web/feed/profile.go
@@ -8,6 +8,8 @@ import (
 
 	activities_model "code.gitea.io/gitea/models/activities"
 	"code.gitea.io/gitea/modules/context"
+	"code.gitea.io/gitea/modules/markup"
+	"code.gitea.io/gitea/modules/markup/markdown"
 
 	"github.com/gorilla/feeds"
 )
@@ -39,10 +41,22 @@ func showUserFeed(ctx *context.Context, formatType string) {
 		return
 	}
 
+	ctxUserDescription, err := markdown.RenderString(&markup.RenderContext{
+		Ctx:       ctx,
+		URLPrefix: ctx.ContextUser.HTMLURL(),
+		Metas: map[string]string{
+			"user": ctx.ContextUser.GetDisplayName(),
+		},
+	}, ctx.ContextUser.Description)
+	if err != nil {
+		ctx.ServerError("RenderString", err)
+		return
+	}
+
 	feed := &feeds.Feed{
 		Title:       ctx.Tr("home.feed_of", ctx.ContextUser.DisplayName()),
 		Link:        &feeds.Link{Href: ctx.ContextUser.HTMLURL()},
-		Description: ctx.ContextUser.Description,
+		Description: ctxUserDescription,
 		Created:     time.Now(),
 	}