@@ -144,27 +144,24 @@ func prepareToRenderReadmeFile(ctx *context.Context, subfolder string, readmeFil
144144	}
145145
146146	readmeFullPath  :=  path .Join (ctx .Repo .TreePath , subfolder , readmeFile .Name ())
147- 	target  :=  readmeFile 
147+ 	readmeTargetEntry  :=  readmeFile 
148148	if  readmeFile .IsLink () {
149- 		res , _  :=  git .EntryFollowLinks (ctx .Repo .Commit , readmeFullPath , readmeFile )
150- 		if  res  !=  nil  {
151- 			target  =  res .TargetEntry 
149+ 		if  res , err  :=  git .EntryFollowLinks (ctx .Repo .Commit , readmeFullPath , readmeFile ); err  ==  nil  {
150+ 			readmeTargetEntry  =  res .TargetEntry 
152151		} else  {
153- 			target  =  nil 
152+ 			readmeTargetEntry  =  nil   // if we cannot resolve the symlink, we cannot render the readme, ignore the error 
154153		}
155154	}
156- 	if  target  ==  nil  {
157- 		// if findReadmeFile() failed and/or gave us a broken symlink (which it shouldn't) 
158- 		// simply skip rendering the README 
159- 		return 
155+ 	if  readmeTargetEntry  ==  nil  {
156+ 		return  // if no valid README entry found, skip rendering the README 
160157	}
161158
162159	ctx .Data ["RawFileLink" ] =  "" 
163160	ctx .Data ["ReadmeInList" ] =  path .Join (subfolder , readmeFile .Name ()) // the relative path to the readme file to the current tree path 
164161	ctx .Data ["ReadmeExist" ] =  true 
165162	ctx .Data ["FileIsSymlink" ] =  readmeFile .IsLink ()
166163
167- 	buf , dataRc , fInfo , err  :=  getFileReader (ctx , ctx .Repo .Repository .ID , target .Blob ())
164+ 	buf , dataRc , fInfo , err  :=  getFileReader (ctx , ctx .Repo .Repository .ID , readmeTargetEntry .Blob ())
168165	if  err  !=  nil  {
169166		ctx .ServerError ("getFileReader" , err )
170167		return 
0 commit comments