Discussion:
Perforce edit question, 'file(s) not on client'
(too old to reply)
Jan van Wijk
2005-11-14 04:58:00 UTC
Permalink
Hi all,

In an effort to use the 'builtin' OS2 toolkit that comes
with OpenWatcom for all my projects I found some
missing definitions for the 'WinMessageBox2()' API.

After opening a change in perforce (#29532), trying to add that definition:

p4 edit -c 29532 pmwin.h

resulted in the following error:

pmwin.h - file(s) not on client.

The command is issued from the 'H:\ow\bld\os2api\incl32' directory,
where that file lives, and the client view is defined as:

+++ start p4 client fragment

Root: H:\ow\bld

Options: noallwrite noclobber nocompress unlocked nomodtime normdir

LineEnd: local

View:
//depot/... //JVWIJK_MERLIN_OS2/...

+++ end p4 client fragment


So what am I doing wrong ?


My simple perforce procedure I have been
using succesfully in the past is a simple:

- p4 change
- p4 add -c change# new-file
- p4 edit -c change# existing-file
- p4 submit -c change#


TIA, Jan van Wijk
--
Jan van Wijk; Author of DFSee: http://www.dfsee.com
Michal Necasek
2005-11-14 04:58:01 UTC
Permalink
Post by Jan van Wijk
So what am I doing wrong ?
I don't know. I can open that file just fine. Try running 'p4 files'
or 'p4 filelog' on that file.
Post by Jan van Wijk
My simple perforce procedure I have been
- p4 change
- p4 add -c change# new-file
- p4 edit -c change# existing-file
- p4 submit -c change#
That's not a "simple" procedure. What you should be doing is simply

- p4 add new-file
- p4 open existing-file
- p4 submit

and let Perforce handle the housekeeping. When you do 'p4 submit', you
can remove currently open files from the submit list as needed.


Michal
Jan van Wijk
2005-11-14 04:58:01 UTC
Permalink
Hi Michal,
Post by Michal Necasek
Post by Jan van Wijk
So what am I doing wrong ?
I don't know. I can open that file just fine. Try running 'p4 files'
or 'p4 filelog' on that file.
Hmm, the 'p4 files pmwin.h' results in:
pmwin.h - protected namespace - accesd denied
and 'p4 filelog pmwin.h' gets the same 'file(s) not on client' error ...

So this looks like some kind of access-right problem ?
Post by Michal Necasek
Post by Jan van Wijk
My simple perforce procedure I have been
- p4 change
- p4 add -c change# new-file
- p4 edit -c change# existing-file
- p4 submit -c change#
That's not a "simple" procedure. What you should be doing is simply
- p4 add new-file
- p4 open existing-file
- p4 submit
OK, the 'open' gives the same error as 'edit' BTW.

And 'open' is not listed as a valid command by my p4 client
(the OS2 commandline version) with 'p4 help simple'
It lists 'edit' as the command to edit an existing file ...
Post by Michal Necasek
and let Perforce handle the housekeeping. When you do 'p4 submit', you
can remove currently open files from the submit list as needed.
Yes I remember that ...

TIA, JvW
--
Jan van Wijk; Author of DFSee: http://www.dfsee.com
Michal Necasek
2005-11-15 05:00:01 UTC
Permalink
Post by Jan van Wijk
Post by Michal Necasek
I don't know. I can open that file just fine. Try running 'p4 files'
or 'p4 filelog' on that file.
pmwin.h - protected namespace - accesd denied
OK, that doesn't sound right...
Post by Jan van Wijk
So this looks like some kind of access-right problem ?
Could be. I'll have to take a look tomorrow at work. What is your
client name (just to make sure I'm looking at the right one)?
Post by Jan van Wijk
OK, the 'open' gives the same error as 'edit' BTW.
The 'open' command is alias for 'edit'.


Michal
Jan van Wijk
2005-11-15 05:00:02 UTC
Permalink
Hi Michal,
Post by Michal Necasek
pmwin.h - protected namespace - access denied
OK, that doesn't sound right...
So this looks like some kind of access-right problem ?
Could be. I'll have to take a look tomorrow at work. What is your
client name (just to make sure I'm looking at the right one)?
JVWIJK_MERLIN_OS2


Just in case there is no quick solution, the updated pmwin.h is available in:

http://www.dfsee.com/download/owpmwin.zip

(about 20 Kb ZIP)
It is the only file needing an update for this, the WinMessageBox2()
API was already in the DEF and LIB files, just no prototype ...

But if there is a soulution, I'll be happy to finish change 29532 myself!

TIA, JvW
--
Jan van Wijk; Author of DFSee: http://www.dfsee.com
Michal Necasek
2005-11-15 05:00:04 UTC
Permalink
Post by Jan van Wijk
http://www.dfsee.com/download/owpmwin.zip
(about 20 Kb ZIP)
You must have an old version - some of the definitions are missing in
your copy.

I also don't think '#pragma pack(4)' makes much sense, but I can see
that it's in IBM's code as well. I'd just use padding to ensure natural
alignment.
Post by Jan van Wijk
But if there is a soulution, I'll be happy to finish change 29532 myself!
There doesn't appear to be anything wrong with your client. I suspect
you may have done something wrong in setting it up.

Just for your reference, this is part of what my client mapping looks
like:

Root: D:\

Options: noallwrite noclobber nocompress unlocked nomodtime rmdir

LineEnd: local

View:
//depot/openwatcom/... //MICHALN_WATCOM/ow/...

Note that the root is D:\ and 'openwatcom' maps to 'ow'. If you have
run 'p4 flush', you've almost certainly got the files in the wrong spot.

Why don't you try 'p4 sync -f' (you can always stop that with Ctrl-C)
and see where the files are ending up?


Michal
Jan van Wijk
2005-11-15 05:00:06 UTC
Permalink
Hi Michal,
Post by Michal Necasek
Post by Jan van Wijk
http://www.dfsee.com/download/owpmwin.zip
(about 20 Kb ZIP)
You must have an old version - some of the definitions are missing in
your copy.
Yes, you are on to something there ...
Post by Michal Necasek
I also don't think '#pragma pack(4)' makes much sense, but I can see
that it's in IBM's code as well. I'd just use padding to ensure natural
alignment.
Yes, i know, I just choose to use almost the same structure IBM did ...
Post by Michal Necasek
Post by Jan van Wijk
But if there is a soulution, I'll be happy to finish change 29532 myself!
There doesn't appear to be anything wrong with your client. I suspect
you may have done something wrong in setting it up.
Yes, it sure looks that way.
I do know I reorganised my development tree quite a while ago ...
Post by Michal Necasek
Just for your reference, this is part of what my client mapping looks
Root: D:\
Options: noallwrite noclobber nocompress unlocked nomodtime rmdir
LineEnd: local
//depot/openwatcom/... //MICHALN_WATCOM/ow/...
Note that the root is D:\ and 'openwatcom' maps to 'ow'. If you have
run 'p4 flush', you've almost certainly got the files in the wrong spot.
Why don't you try 'p4 sync -f' (you can always stop that with Ctrl-C)
and see where the files are ending up?
They ended up in 'H:\ ow\bld\openwatcom\bld\...
So I had a double tree there, and have been building
a never changing (old) version for a while :-)

I updated my client view now to reflect the correct position.
(much like yours, but different driveletter)

I am running a full sync now, and when everything is up to date
and building correctly again, I will redo the pmwin.h change
based on the latest depot version ...

Thanks for checking it out!

Regards, JvW
--
Jan van Wijk; Author of DFSee: http://www.dfsee.com
Jan van Wijk
2005-11-17 04:57:07 UTC
Permalink
On Mon, 14 Nov 2005 21:55:06 UTC, "Jan van Wijk" <***@dfsee.com> wrote:
FYI,
Post by Jan van Wijk
I am running a full sync now, and when everything is up to date
and building correctly again, I will redo the pmwin.h change
based on the latest depot version ...
I have completed the sync, and am fully up to date again.

I completed the change for pmwin.h based on this,
and have submitted change 29553.

(it WAS 29532, but Perforce renumbered on submit ?)

Regards, JvW
--
Jan van Wijk; Author of DFSee: http://www.dfsee.com
Loading...