This is the kind of small bug that takes hours to track down: The missing

grist caused bfd to be compiled using gdb's config.h. This made it think
Haiku had no fcntl() and thus assumed shared objects were opened r/w instead
of read-only, which made it write back data when closing the files. So this
fixes the problem that gdb damages the shared objects it had loaded.

Basically two questions remain:
1) Why does BFD write something into the files that makes them invalid?
2) Why was it possible to write something into the read-only opened files?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13791 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold 2005-07-21 19:37:41 +00:00
parent edcc167783
commit 71903a151d
2 changed files with 2 additions and 2 deletions

View File

@ -152,7 +152,7 @@ rule BFDCopyConfigHeaders
local sources = $(1:G=$(SOURCE_GRIST:E)!config) ;
local source ;
for source in $(1) {
for source in $(sources) {
local target = [ FGristFiles $(source) ] ;
File $(target) : $(source) ;
SEARCH on $(source) = [ FDirName $(SUBDIR) config-$(OBOS_ARCH) ] ;

View File

@ -283,7 +283,7 @@ rule GDBCopyConfigFiles
local sources = $(1:G=$(SOURCE_GRIST:E)!config) ;
local source ;
for source in $(1) {
for source in $(sources) {
local target = [ FGristFiles $(source) ] ;
File $(target) : $(source) ;
SEARCH on $(source) = [ FDirName $(SUBDIR) config-$(OBOS_ARCH) ] ;