Skip to content

Commit ade813b

Browse files
Kabir PandaKabir Panda
authored andcommitted
Fix: ensure redirect to user group view includes required group path param and validate inputs
Signed-off-by: Kabir Panda <kabirpanda@Kabirs-MacBook-Air.local>
1 parent 4221cba commit ade813b

1 file changed

Lines changed: 17 additions & 9 deletions

File tree

augur/api/view/api.py

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -155,21 +155,29 @@ def user_remove_repo():
155155
group = request.args.get("group_name")
156156
repo = request.args.get("repo_id")
157157

158-
if not repo:
159-
flash("No repo id provided")
160-
if not group:
161-
flash("No group name provided")
162-
163-
repo = int(repo)
164-
165-
result = current_user.remove_repo(group, repo)[0]
158+
# Validate inputs early and avoid proceeding with invalid data
159+
if not repo or not group:
160+
if not repo:
161+
flash("No repo id provided")
162+
if not group:
163+
flash("No group name provided")
164+
165+
166+
try:
167+
repo_id = int(repo)
168+
except (TypeError, ValueError):
169+
flash("Invalid repo id provided")
170+
171+
172+
result = current_user.remove_repo(group, repo_id)[0]
166173

167174
if result:
168175
flash(f"Successfully removed repo {repo} from group {group}")
169176
else:
170177
flash("An error occurred removing repo from group")
171178

172-
return redirect(url_for("user_group_view") + f"?group={group}")
179+
# Redirect to the group view; the route requires a 'group' path parameter
180+
return redirect(url_for("user_group_view", group=group))
173181

174182
@app.route('/account/application/deauthorize')
175183
@login_required

0 commit comments

Comments
 (0)