#include <iostream>
#include <strstream>
#include <memory>
using namespace std;
bool fillScreen(std::ostream&);
int main ()
{
auto_ptr<ostrstream> screen(new ostrstream);
bool succ = false;
try
{
succ = fillScreen(*screen);
}catch(std::exception &ex)
{
std::cerr << ex.what() << std::endl;
}
if(succ)
{
std::cout << "SCREEN Content is : " << screen->str() << std::endl;
}
else
{
std::cout << "NOTHING ON SCREEN Object " << std::endl;
}
}
bool fillScreen(ostream &scr)
{
unsigned long idx = 0;
scr.exceptions(std::ios::badbit);// throws exception in windows but not in Linux.
while (idx++ < 999999999)
{
scr << "BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH BLAHBLAHBLAH_BLAH BLAHBLAHBLAH_BLAH_" << " : " ;
scr << "BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_";
scr << "BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_BLAHBLAHBLAH_BLAH_"<< std::endl;
/*if(!(idx %100000))
{
std::cout << "Reached iteration: " << idx << std::endl;
}*/
}
return true;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3Ryc3RyZWFtPgojaW5jbHVkZSA8bWVtb3J5PgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKYm9vbCBmaWxsU2NyZWVuKHN0ZDo6b3N0cmVhbSYpOwoKaW50IG1haW4gKCkKewogICAgYXV0b19wdHI8b3N0cnN0cmVhbT4gc2NyZWVuKG5ldyBvc3Ryc3RyZWFtKTsKICAgIGJvb2wgc3VjYyA9IGZhbHNlOwogICAgdHJ5CiAgICB7CiAgICAgICAgc3VjYyA9IGZpbGxTY3JlZW4oKnNjcmVlbik7CiAgICB9Y2F0Y2goc3RkOjpleGNlcHRpb24gJmV4KQogICAgewogICAgICAgIHN0ZDo6Y2VyciA8PCBleC53aGF0KCkgPDwgc3RkOjplbmRsOwogICAgfQogICAgaWYoc3VjYykKICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgIlNDUkVFTiBDb250ZW50IGlzIDogIiA8PCBzY3JlZW4tPnN0cigpIDw8IHN0ZDo6ZW5kbDsKICAgIH0KICAgIGVsc2UKICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgIk5PVEhJTkcgT04gU0NSRUVOIE9iamVjdCAiIDw8IHN0ZDo6ZW5kbDsKICAgIH0KfQoKYm9vbCBmaWxsU2NyZWVuKG9zdHJlYW0gJnNjcikKewogICAgdW5zaWduZWQgbG9uZyBpZHggPSAwOwogICAgc2NyLmV4Y2VwdGlvbnMoc3RkOjppb3M6OmJhZGJpdCk7Ly8gdGhyb3dzIGV4Y2VwdGlvbiBpbiB3aW5kb3dzIGJ1dCBub3QgaW4gTGludXguCiAgICB3aGlsZSAoaWR4KysgPCA5OTk5OTk5OTkpCiAgICB7CiAgICAgICAgc2NyIDw8ICJCTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSCBCTEFIQkxBSEJMQUhfQkxBSCBCTEFIQkxBSEJMQUhfQkxBSF8iIDw8ICIgOiAiIDsKICAgICAgICBzY3IgPDwgIkJMQUhCTEFIQkxBSF9CTEFIX0JMQUhCTEFIQkxBSF9CTEFIX0JMQUhCTEFIQkxBSF9CTEFIX0JMQUhCTEFIQkxBSF9CTEFIX0JMQUhCTEFIQkxBSF9CTEFIX0JMQUhCTEFIQkxBSF9CTEFIXyI7CiAgICAgICAgc2NyIDw8ICJCTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSF9CTEFIQkxBSEJMQUhfQkxBSF8iPDwgc3RkOjplbmRsOyAgIAogICAgICAgIC8qaWYoIShpZHggJTEwMDAwMCkpCiAgICAgICAgewogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgIlJlYWNoZWQgaXRlcmF0aW9uOiAiIDw8IGlkeCA8PCBzdGQ6OmVuZGw7CiAgICAgICAgfSovCiAgICB9CiAgICByZXR1cm4gdHJ1ZTsKfQ==