Hi All Following program is not working on linux. Ideally it should read all the lines from "/tmp/log.txt" and print them on to the screen. Instead it breals after it encounters fgets for the first time. Pleas tell me where I am going wrong!!!! This program is working as expected on a Solaris machine. Regards -Ajay ------------------------------------------------------------------------ ----------- Entries in log.txt ------------------ Line1 Line2 Line3 ------------------ Output of the program --------------------- [ajay@xxxxxx test]$ ./a.out Fileno is :3 Error no is : 0 Error is : Success Line read is : after fgets break outside while loop --------------------- #include <iostream> #include <fstream> #include <errno.h> #include <stdlib.h> using namespace std; int main() { char * pszFileName = "/tmp/log.txt"; char * pszMode = "a+"; char lpsz[4096]; FILE *pFile = fopen(pszFileName, pszMode); while (!feof(pFile)) { if (! fgets(lpsz, 4096, pFile)) { cout<<"Error no is : "<<errno<<endl; cout<<"Error is : "<<strerror(errno)<<endl; cout<<"Line read is : "<<lpsz<<endl; break; } cout<<"Line read is : "<<lpsz<<endl; cout <<" after fgets break inside while loop"<<endl; } cout <<" after fgets break outside while loop"<<endl; return 1; } _______________________________________________ Redhat-devel-list mailing list Redhat-devel-list@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/redhat-devel-list