/* * Copyright 2011 Perforce Software. All rights reserved. * * This file is part of Perforce - the FAST SCM System. */ # include <stdhdrs.h> # include <error.h> # include <errorlog.h> # include <strbuf.h> # include <filesys.h> # include "filestrbuf.h" FileStrPtr::FileStrPtr( StrPtr *s ) { ptr = s; offset = 0; } void FileStrPtr::Open( FileOpenMode mode, Error *e ) { if( mode == FOM_WRITE ) e->Set( E_FATAL, "can't write to a FileStrPtr!" ); offset = 0; } int FileStrPtr::Read( char *buf, int len, Error * ) { if( len < 1 ) return 0; int avail = ptr->Length() - offset; // Already read everything? if( avail < 1 ) return 0; // Asked to read more than we have? if( avail < len ) { memcpy( buf, ptr->Value() + offset, avail ); offset = ptr->Length(); return avail; } // Asked to read less than we have? memcpy( buf, ptr->Value() + offset, len ); offset += len; return len; } offL_t FileStrPtr::GetSize() { return ptr->Length(); }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 18760 | rlranft |
Populate -o //guest/perforce_software/p4/... //guest/rlranft/p4/.... |
||
//guest/perforce_software/p4/2015-1/sys/filestrbuf.cc | |||||
#1 | 15903 | Matt Attaway | Everything should be happy now between the Workshop and the depot paths | ||
//guest/perforce_software/p4/2015_1/sys/filestrbuf.cc | |||||
#1 | 15901 | Matt Attaway | Clean up code to fit modern Workshop naming standards | ||
//guest/perforce_software/p4/2015.1/sys/filestrbuf.cc | |||||
#1 | 12190 | Matt Attaway | Initial drop of 2015.1 p4/p4api source |