Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 28872 Details for
Bug 9849
mounted FS access/merge failures (baselayout)
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Portage-2.0.50-r4 patch to ignore failed directory or .keep file creation
portage-2.0.50-r4-keep.patch (text/plain), 3.28 KB, created by
Jason Stubbs (RETIRED)
on 2004-04-07 21:26:55 UTC
(
hide
)
Description:
Portage-2.0.50-r4 patch to ignore failed directory or .keep file creation
Filename:
MIME Type:
Creator:
Jason Stubbs (RETIRED)
Created:
2004-04-07 21:26:55 UTC
Size:
3.28 KB
patch
obsolete
>--- portage-orig/pym/portage.py 2004-04-08 12:21:06.699076112 +0900 >+++ portage/pym/portage.py 2004-04-08 13:11:32.074149192 +0900 >@@ -2472,7 +2472,11 @@ > try: > dstat=os.lstat(dest) > except: >- dstat=os.lstat(os.path.dirname(dest)) >+ try: >+ dstat=os.lstat(os.path.dirname(dest)) >+ # Parent directory does not exist >+ except: >+ return None > destexists=0 > > if destexists: >@@ -2516,8 +2520,6 @@ > import errno > if e[0]!=errno.EXDEV: > # Some random error. >- print "!!! Failed to move",src,"to",dest >- print "!!!",e > return None > # Invalid cross-device-link 'bind' mounted or actually Cross-Device > if renamefailed: >@@ -2532,8 +2534,6 @@ > os.rename(dest+"#new",dest) > didcopy=1 > except Exception, e: >- print '!!! copy',src,'->',dest,'failed.' >- print "!!!",e > return None > else: > #we don't yet handle special, so we need to fall back to /bin/mv >@@ -6023,16 +6023,6 @@ > elif S_ISDIR(mymode): > # we are merging a directory > if mydmode!=None: >- # destination exists >- if not os.access(mydest, os.W_OK): >- pkgstuff = pkgsplit(self.pkg) >- writemsg("\n!!! Cannot write to '"+mydest+"'.\n") >- writemsg("!!! Please check permissions and directories for broken symlinks.\n") >- writemsg("!!! You may start the merge process again by using ebuild:\n") >- writemsg("!!! ebuild "+self.settings["PORTDIR"]+"/"+self.cat+"/"+pkgstuff[0]+"/"+self.pkg+".ebuild merge\n") >- writemsg("!!! And finish by running this: env-update\n\n") >- return 1 >- > if S_ISLNK(mydmode) or S_ISDIR(mydmode): > # a symlink to an existing directory will work for us; keep it: > print "---",mydest+"/" >@@ -6048,10 +6038,14 @@ > print ">>>",mydest+"/" > else: > #destination doesn't exist >- os.mkdir(mydest) >- os.chmod(mydest,mystat[0]) >- os.chown(mydest,mystat[4],mystat[5]) >- print ">>>",mydest+"/" >+ try: >+ os.mkdir(mydest) >+ os.chmod(mydest,mystat[0]) >+ os.chown(mydest,mystat[4],mystat[5]) >+ print ">>>",mydest+"/" >+ except OSError: >+ #Don't die here. Die when real files are attempted to be copied. >+ print "!!!",mydest+"/" > outfile.write("dir "+myrealdest+"\n") > # recurse and merge this directory > if self.mergeme(srcroot,destroot,outfile,secondhand,offset+x+"/",cfgfiledict,thismtime): >@@ -6119,8 +6113,21 @@ > if moveme: > mymtime=movefile(mysrc,mydest,thismtime,mystat, mysettings=self.settings) > if mymtime == None: >- sys.exit(1) >- zing=">>>" >+ #If it's a ".keep" file, simply report the failure. >+ if os.path.basename(mydest)==".keep": >+ zing="!!!" >+ #Otherwise directory permissions, >+ #mounts, whatever are preventing it. >+ else: >+ pkgstuff = pkgsplit(self.pkg) >+ writemsg("\n!!! Cannot write to '"+mydest+"'.\n") >+ writemsg("!!! Please check permissions and directories for broken symlinks.\n") >+ writemsg("!!! You may start the merge process again by using ebuild:\n") >+ writemsg("!!! ebuild "+self.settings["PORTDIR"]+"/"+self.cat+"/"+pkgstuff[0]+"/"+self.pkg+".ebuild merge\n") >+ writemsg("!!! And finish by running this: env-update\n\n") >+ sys.exit(1) >+ else: >+ zing=">>>" > else: > mymtime=thismtime > # We need to touch the destination so that on --update the
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 9849
:
18106
|
18614
|
28872
|
28874
|
28926
|
29121