Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1ghZXG-0001t7-Fx for pgadmin-hackers@arkaria.postgresql.org; Thu, 10 Jan 2019 12:34:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1ghZXF-0007db-6Z for pgadmin-hackers@arkaria.postgresql.org; Thu, 10 Jan 2019 12:34:09 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1ghZUG-0003KC-4k for pgadmin-hackers@lists.postgresql.org; Thu, 10 Jan 2019 12:31:04 +0000 Received: from mail-lj1-x22f.google.com ([2a00:1450:4864:20::22f]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1ghZUD-0006rL-ED for pgadmin-hackers@postgresql.org; Thu, 10 Jan 2019 12:31:03 +0000 Received: by mail-lj1-x22f.google.com with SMTP id q2-v6so9512311lji.10 for ; Thu, 10 Jan 2019 04:31:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=gw1g5yI35lA14pN2nkn8YavgbP+TLG/Etka0shAsq9A=; b=qThZoOdzdg8Ezj95RBoIpeqBQA5MRoqzWmCv9zOetZR4wEpWkxE4Y2/6RExueF4IAa n8YUTHZkskPHN8p+R8pDM6+FRj91T5BiK6oDSucwLsZc8vnvhZIStJPtlNWxEYwv10uY 0ZnLZl43NXb96r36zZTk6d57Y0K0+uFqfYmMeG+HZfls9vKVkF3IgZlJnXQTkM8QRpMC wcFduWcBw3j2b36pUSpPRj5YsvvkZx02RaMcfJd8cxRysu+Im6OHoimOMsulSyZs7B46 PZZbtQpVG1z6Kmebs771utqZs+PSeMUHrE67AQSbEP8cGjBPhjK+B89NflDthx2hYvCb 8s4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=gw1g5yI35lA14pN2nkn8YavgbP+TLG/Etka0shAsq9A=; b=a3EQnF1t4l/fNBA7cs+eewTcQ6RKiz/mNplPGytJ3sNIEqi0KayWgavqdGPZDlMyid HuBCYIAhcEArkAhSyJZET3V3QvPTGJXg3qeQuT8hB36yMYSBQdVdMQe9jwUJvJ94zjhV PWU6RnbaBYrg/qbdw71ZngxV75+FPMB4yI5GprMb+zH3nH+l1eyoFnk1w8OY60kJbV5S tTK+HPabNb0ogXUHx5TCfJqQSQAtUxV5DDwULbPLjvXyEhymdqWjqk1xrvVfQ2FYl/N6 zgU5Yq3rM8h8YAvnNTqR3Hhw/BqLc79eqT01a3CiZONukRRZJwUqrNv1qq6YBOA8u+3m H2fw== X-Gm-Message-State: AJcUukfoS71ZKwjw/d2/EnxKti/u2nAKvYoIIEskcIx29Y31Lc4acG79 IdXOwk3W38tHp+L+9gTcjzjgR/vD56/Oz2gyMQ944neh X-Google-Smtp-Source: ALg8bN5jpAFaODP9OGAGImkEMmtQtJLGSZyi/IanZYg9aYlY3uI5uTO9QlbBdFrhwJIatLUUYiDokIQI5J4J7C/DvMg= X-Received: by 2002:a2e:9d17:: with SMTP id t23-v6mr5765028lji.57.1547123459137; Thu, 10 Jan 2019 04:30:59 -0800 (PST) MIME-Version: 1.0 From: Aditya Toshniwal Date: Thu, 10 Jan 2019 18:00:48 +0530 Message-ID: Subject: [pgAdmin4][patch] SQL_ASCII database related codec fix To: pgadmin-hackers Content-Type: multipart/mixed; boundary="00000000000035690d057f19c06b" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --00000000000035690d057f19c06b Content-Type: multipart/alternative; boundary="00000000000035690b057f19c069" --00000000000035690b057f19c069 Content-Type: text/plain; charset="UTF-8" Hi Hackers, Attached is the patch to make SQL_ASCII database handling on pgAdmin more robust. Kindly review. -- Thanks and Regards, Aditya Toshniwal Software Engineer | EnterpriseDB Software Solutions | Pune "Don't Complain about Heat, Plant a tree" --00000000000035690b057f19c069 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,

Attached is the patch to make SQL_ASCII databa= se handling on pgAdmin more robust.
Kindly review.

-- <= br>
Thanks and Regards,
Aditya Toshniwal
=
Software Engineer |=C2=A0E= nterpriseDB Software Solutions |=C2=A0P= une
"Don't Complai= n about Heat, Plant a tree"
--00000000000035690b057f19c069-- --00000000000035690d057f19c06b Content-Type: application/octet-stream; name="sqlascii.fix.patch" Content-Disposition: attachment; filename="sqlascii.fix.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jqqlbfnh0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3BnMi9jb25uZWN0aW9u LnB5IGIvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL2Nvbm5lY3Rpb24ucHkKaW5k ZXggZGNmNGIwZTYuLmEzNTcwZjVhIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi91dGlscy9kcml2 ZXIvcHN5Y29wZzIvY29ubmVjdGlvbi5weQorKysgYi93ZWIvcGdhZG1pbi91dGlscy9kcml2ZXIv cHN5Y29wZzIvY29ubmVjdGlvbi5weQpAQCAtMzYsNyArMzYsNyBAQCBmcm9tIC5jdXJzb3IgaW1w b3J0IERpY3RDdXJzb3IKIGZyb20gLnR5cGVjYXN0IGltcG9ydCByZWdpc3Rlcl9nbG9iYWxfdHlw ZWNhc3RlcnMsIFwKICAgICByZWdpc3Rlcl9zdHJpbmdfdHlwZWNhc3RlcnMsIHJlZ2lzdGVyX2Jp bmFyeV90eXBlY2FzdGVycywgXAogICAgIHJlZ2lzdGVyX2FycmF5X3RvX3N0cmluZ190eXBlY2Fz dGVycywgQUxMX0pTT05fVFlQRVMKLWZyb20gLmVuY29kaW5nIGltcG9ydCBnZXRFbmNvZGluZwor ZnJvbSAuZW5jb2RpbmcgaW1wb3J0IGdldEVuY29kaW5nLCBjb25maWd1cmVEcml2ZXJFbmNvZGlu Z3MKIGZyb20gcGdhZG1pbi51dGlscyBpbXBvcnQgY3N2CiAKIGlmIHN5cy52ZXJzaW9uX2luZm8g PCAoMywpOgpAQCAtNTAsNyArNTAsNyBAQCBfID0gZ2V0dGV4dAogCiAjIFJlZ2lzdGVyIGdsb2Jh bCB0eXBlIGNhc3RlciB3aGljaCB3aWxsIGJlIGFwcGxpY2FibGUgdG8gYWxsIGNvbm5lY3Rpb25z LgogcmVnaXN0ZXJfZ2xvYmFsX3R5cGVjYXN0ZXJzKCkKLQorY29uZmlndXJlRHJpdmVyRW5jb2Rp bmdzKGVuY29kaW5ncykKIAogY2xhc3MgQ29ubmVjdGlvbihCYXNlQ29ubmVjdGlvbik6CiAgICAg IiIiCkBAIC00MDgsMTUgKzQwOCw2IEBAIGNsYXNzIENvbm5lY3Rpb24oQmFzZUNvbm5lY3Rpb24p OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTRVQgY2xpZW50X2VuY29kaW5nPSd7 MH0nOyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChwb3N0Z3Jlc19lbmNvZGlu ZykpCiAKLSAgICAgICAgIyBSZXBsYWNlIHRoZSBweXRob24gZW5jb2RpbmcgZm9yIG9yaWdpbmFs IG5hbWUgYW5kIHJlbmFtZWQgZW5jb2RpbmdzCi0gICAgICAgICMgcHN5Y29wZzIgcmVtb3ZlcyB0 aGUgdW5kZXJzY29yZSBpbiBjb25uLmVuY29kaW5nCi0gICAgICAgICMgU2V0dGluZyB0aGUgZW5j b2RpbmdzIGRpY3QgdmFsdWUgd2lsbCBvbmx5IGhlbHAgZm9yIHNlbGVjdCBzdGF0ZW1lbnRzCi0g ICAgICAgICMgYmVjYXVzZSBmb3IgcGFyYW1ldGVyaXplZCBETUwsIHBhcmFtIHZhbHVlcyBhcmUg Y29udmVydGVkIGJhc2VkIG9uCi0gICAgICAgICMgcHl0aG9uIGVuY29kaW5nIG9mIHB5c2NvcGcy cyBpbnRlcm5hbCBlbmNvZGluZ3MgZGljdC4KLSAgICAgICAgZm9yIGtleSwgdmFsIGluIGVuY29k aW5ncy5pdGVtcygpOgotICAgICAgICAgICAgaWYga2V5LnJlcGxhY2UoJ18nLCAnJykgPT0gc2Vs Zi5jb25uLmVuY29kaW5nOgotICAgICAgICAgICAgICAgIGVuY29kaW5nc1trZXldID0gc2VsZi5w eXRob25fZW5jb2RpbmcKLQogICAgICAgICBpZiBzdGF0dXMgaXMgbm90IE5vbmU6CiAgICAgICAg ICAgICBzZWxmLmNvbm4uY2xvc2UoKQogICAgICAgICAgICAgc2VsZi5jb25uID0gTm9uZQpkaWZm IC0tZ2l0IGEvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL2N1cnNvci5weSBiL3dl Yi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3BnMi9jdXJzb3IucHkKaW5kZXggYzgzZjI4NTQu LmQ3OGFiNGIwIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi91dGlscy9kcml2ZXIvcHN5Y29wZzIv Y3Vyc29yLnB5CisrKyBiL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3BnMi9jdXJzb3Iu cHkKQEAgLTE4LDcgKzE4LDEwIEBAIHRyeToKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBmcm9t IG9yZGVyZWRkaWN0IGltcG9ydCBPcmRlcmVkRGljdAogCi1mcm9tIHBzeWNvcGcyLmV4dGVuc2lv bnMgaW1wb3J0IGN1cnNvciBhcyBfY3Vyc29yCitmcm9tIHBzeWNvcGcyLmV4dGVuc2lvbnMgaW1w b3J0IGN1cnNvciBhcyBfY3Vyc29yLCBlbmNvZGluZ3MKK2Zyb20gLmVuY29kaW5nIGltcG9ydCBj b25maWd1cmVEcml2ZXJFbmNvZGluZ3MKKworY29uZmlndXJlRHJpdmVyRW5jb2RpbmdzKGVuY29k aW5ncykKIAogCiBjbGFzcyBfV3JhcHBlckNvbHVtbihvYmplY3QpOgpkaWZmIC0tZ2l0IGEvd2Vi L3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL2VuY29kaW5nLnB5IGIvd2ViL3BnYWRtaW4v dXRpbHMvZHJpdmVyL3BzeWNvcGcyL2VuY29kaW5nLnB5CmluZGV4IGY3ZDZlNDZmLi4zM2EyYzkw ZiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL2VuY29kaW5n LnB5CisrKyBiL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3BnMi9lbmNvZGluZy5weQpA QCAtOSw2ICs5LDIzIEBACiAKICMgIEdldCBQb3N0Z3JlcyBhbmQgUHl0aG9uIGVuY29kaW5nCiAK K2VuY29kZV9kaWN0ID0geworICAgICdTUUxfQVNDSUknOiBbJ1NRTF9BU0NJSScsICdyYXdfdW5p Y29kZV9lc2NhcGUnXSwKKyAgICAnU1FMQVNDSUknOiBbJ1NRTF9BU0NJSScsICdyYXdfdW5pY29k ZV9lc2NhcGUnXSwKKyAgICAnTVVMRV9JTlRFUk5BTCc6IFsnTVVMRV9JTlRFUk5BTCcsICdyYXdf dW5pY29kZV9lc2NhcGUnXSwKKyAgICAnTVVMRUlOVEVSTkFMJzogWydNVUxFSU5URVJOQUwnLCAn cmF3X3VuaWNvZGVfZXNjYXBlJ10sCisgICAgJ0xBVElOMSc6IFsnTEFUSU4xJywgJ2xhdGluMSdd LAorICAgICdMQVRJTjInOiBbJ0xBVElOMicsICdsYXRpbjInXSwKKyAgICAnTEFUSU4zJzogWydM QVRJTjMnLCAnbGF0aW4zJ10sCisgICAgJ0xBVElONCc6IFsnTEFUSU40JywgJ2xhdGluNCddLAor ICAgICdMQVRJTjUnOiBbJ0xBVElONScsICdsYXRpbjUnXSwKKyAgICAnTEFUSU42JzogWydMQVRJ TjYnLCAnbGF0aW42J10sCisgICAgJ0xBVElONyc6IFsnTEFUSU43JywgJ2xhdGluNyddLAorICAg ICdMQVRJTjgnOiBbJ0xBVElOOCcsICdsYXRpbjgnXSwKKyAgICAnTEFUSU45JzogWydMQVRJTjkn LCAnbGF0aW45J10sCisgICAgJ0xBVElOMTAnOiBbJ0xBVElOMTAnLCAnbGF0aW4xMCddCit9CisK IAogZGVmIGdldEVuY29kaW5nKGtleSk6CiAgICAgIiIiCkBAIC0xNiwyMSArMzMsMTQgQEAgZGVm IGdldEVuY29kaW5nKGtleSk6CiAgICAgOnJldHVybjoKICAgICBbUG9zdGdyZXNfZW5jb2Rpbmcs IFB5dGhvbl9lbmNvZGluZ10gLSBQb3N0Z3JlcyBhbmQgUHl0aG9uIGVuY29kaW5nCiAgICAgIiIi Ci0gICAgZW5jb2RlX2RpY3QgPSB7Ci0gICAgICAgICdTUUxfQVNDSUknOiBbJ1NRTF9BU0NJSScs ICdyYXdfdW5pY29kZV9lc2NhcGUnXSwKLSAgICAgICAgJ1NRTEFTQ0lJJzogWydTUUxfQVNDSUkn LCAncmF3X3VuaWNvZGVfZXNjYXBlJ10sCi0gICAgICAgICdNVUxFX0lOVEVSTkFMJzogWydNVUxF X0lOVEVSTkFMJywgJ3Jhd191bmljb2RlX2VzY2FwZSddLAotICAgICAgICAnTVVMRUlOVEVSTkFM JzogWydNVUxFSU5URVJOQUwnLCAncmF3X3VuaWNvZGVfZXNjYXBlJ10sCi0gICAgICAgICdMQVRJ TjEnOiBbJ0xBVElOMScsICdsYXRpbjEnXSwKLSAgICAgICAgJ0xBVElOMic6IFsnTEFUSU4yJywg J2xhdGluMiddLAotICAgICAgICAnTEFUSU4zJzogWydMQVRJTjMnLCAnbGF0aW4zJ10sCi0gICAg ICAgICdMQVRJTjQnOiBbJ0xBVElONCcsICdsYXRpbjQnXSwKLSAgICAgICAgJ0xBVElONSc6IFsn TEFUSU41JywgJ2xhdGluNSddLAotICAgICAgICAnTEFUSU42JzogWydMQVRJTjYnLCAnbGF0aW42 J10sCi0gICAgICAgICdMQVRJTjcnOiBbJ0xBVElONycsICdsYXRpbjcnXSwKLSAgICAgICAgJ0xB VElOOCc6IFsnTEFUSU44JywgJ2xhdGluOCddLAotICAgICAgICAnTEFUSU45JzogWydMQVRJTjkn LCAnbGF0aW45J10sCi0gICAgICAgICdMQVRJTjEwJzogWydMQVRJTjEwJywgJ2xhdGluMTAnXQot ICAgIH0KLQogICAgIHJldHVybiBlbmNvZGVfZGljdC5nZXQoa2V5LCBbJ1VOSUNPREUnLCAndXRm LTgnXSkKKworZGVmIGNvbmZpZ3VyZURyaXZlckVuY29kaW5ncyhlbmNvZGluZ3MpOgorICAgICMg UmVwbGFjZSB0aGUgcHl0aG9uIGVuY29kaW5nIGZvciBvcmlnaW5hbCBuYW1lIGFuZCByZW5hbWVk IGVuY29kaW5ncworICAgICMgcHN5Y29wZzIgcmVtb3ZlcyB0aGUgdW5kZXJzY29yZSBpbiBjb25u LmVuY29kaW5nCisgICAgIyBTZXR0aW5nIHRoZSBlbmNvZGluZ3MgZGljdCB2YWx1ZSB3aWxsIG9u bHkgaGVscCBmb3Igc2VsZWN0IHN0YXRlbWVudHMKKyAgICAjIGJlY2F1c2UgZm9yIHBhcmFtZXRl cml6ZWQgRE1MLCBwYXJhbSB2YWx1ZXMgYXJlIGNvbnZlcnRlZCBiYXNlZCBvbgorICAgICMgcHl0 aG9uIGVuY29kaW5nIG9mIHB5c2NvcGcycyBpbnRlcm5hbCBlbmNvZGluZ3MgZGljdC4KKyAgICBm b3Iga2V5LCB2YWwgaW4gZW5jb2RlX2RpY3QuaXRlbXMoKToKKyAgICAgICAgcG9zdGdyZXNfZW5j b2RpbmcsIHB5dGhvbl9lbmNvZGluZyA9IHZhbAorICAgICAgICBlbmNvZGluZ3Nba2V5XSA9IHB5 dGhvbl9lbmNvZGluZwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNv cGcyL3R5cGVjYXN0LnB5IGIvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL3R5cGVj YXN0LnB5CmluZGV4IDBlMzhlMDM0Li44MWNkY2ZlYyAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4v dXRpbHMvZHJpdmVyL3BzeWNvcGcyL3R5cGVjYXN0LnB5CisrKyBiL3dlYi9wZ2FkbWluL3V0aWxz L2RyaXZlci9wc3ljb3BnMi90eXBlY2FzdC5weQpAQCAtMTgsNiArMTgsMTAgQEAgZnJvbSBwc3lj b3BnMiBpbXBvcnQgU1RSSU5HIGFzIF9TVFJJTkcKIGltcG9ydCBwc3ljb3BnMgogZnJvbSBwc3lj b3BnMi5leHRlbnNpb25zIGltcG9ydCBlbmNvZGluZ3MKIAorZnJvbSAuZW5jb2RpbmcgaW1wb3J0 IGNvbmZpZ3VyZURyaXZlckVuY29kaW5ncworCitjb25maWd1cmVEcml2ZXJFbmNvZGluZ3MoZW5j b2RpbmdzKQorCiAKICMgT0lEcyBvZiBkYXRhIHR5cGVzIHdoaWNoIG5lZWQgdG8gdHlwZWNhc3Qg YXMgc3RyaW5nIHRvIGF2b2lkIEphdmFTY3JpcHQKICMgY29tcGF0aWJpbGl0eSBpc3N1ZXMuCkBA IC0xNzYsMTIgKzE4MCwxMiBAQCBkZWYgcmVnaXN0ZXJfc3RyaW5nX3R5cGVjYXN0ZXJzKGNvbm5l Y3Rpb24pOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQogICAgICAgICAgICAgICAg IHJldHVybiBieXRlcygKICAgICAgICAgICAgICAgICAgICAgdmFsdWUsIGVuY29kaW5nc1tjdXJz b3IuY29ubmVjdGlvbi5lbmNvZGluZ10KLSAgICAgICAgICAgICAgICApLmRlY29kZSgncmF3X3Vu aWNvZGVfZXNjYXBlJykKKyAgICAgICAgICAgICAgICApLmRlY29kZSgncmF3X3VuaWNvZGVfZXNj YXBlJywgZXJyb3JzPSdpZ25vcmUnKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgZGVmIG5v bl9hc2NpaV9lc2NhcGUodmFsdWUsIGN1cnNvcik6CiAgICAgICAgICAgICAgICAgaWYgdmFsdWUg aXMgTm9uZToKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgICAgICAg ICByZXR1cm4gdmFsdWUuZGVjb2RlKCdyYXdfdW5pY29kZV9lc2NhcGUnKQorICAgICAgICAgICAg ICAgIHJldHVybiB2YWx1ZS5kZWNvZGUoJ3Jhd191bmljb2RlX2VzY2FwZScsIGVycm9ycz0naWdu b3JlJykKIAogICAgICAgICB1bmljb2RlX3R5cGUgPSBwc3ljb3BnMi5leHRlbnNpb25zLm5ld190 eXBlKAogICAgICAgICAgICAgIyAiY2hhciIsIG5hbWUsIHRleHQsIGNoYXJhY3RlciwgY2hhcmFj dGVyIHZhcnlpbmcK --00000000000035690d057f19c06b--